老師你好: guess1 = input("which one of these is a fish? \ A) Whale B) Dolphin C) Shark D) Squid \ Type A, B, C, or D ") 請問我要怎麼把顯示在終端機的游標設置在問句的後面呢? 不然都會出現在字串的最後面,這樣不好看
老師你好,我照著11:37秒的公式輸進Python會得不出東西~系統告訴我第二排的x=int(x)有誤,如下: Traceback (most recent call last): line 2, in ValueError: invalid literal for int() with base 10: '' 請問為什麼呢?謝謝
彭彭老師, 請問為什麼會出現這個錯誤? Please enter a number:12 Please enter another number:12 Please enter your calculations: +, -, *, /: - Traceback (most recent call last): File "if.py", line 15, in op=input("Please enter your calculations: +, -, *, /: ") File "", line 1 - ^ SyntaxError: unexpected EOF while parsing
而且發現註解中有中文的話都會造成錯誤: File "if.py", line 4 SyntaxError: Non-ASCII character '\xe5' in file if.py on line 4, but no encoding declared; see python.org/dev/peps/pep-0263/ for details
作者講的中肯,自己在不看影片的狀況下,自己在去模擬寫出來,真的才會變成是自己的知識。
謝謝作者的製作。
這點真的很重要,感謝幫我摘錄 :)
感觉彭彭老师是那种很适合教学的人,讲解让人印象深刻,语言很有辨识度,输入力很强
谢谢你的回馈,希望对大家有帮助就好 :)
看了很多python的教學影片 彭老師的影片最容易理解 希望彭老師往後能po更多的教學影片
謝謝哪 ~ 會盡量提供更多教學 :)
Part 1:
# 判斷式
if True:
print("True 執行")
else:
print("False 執行")
Part 2:
x=input("請輸入數字︰") # 取得字串形式的使用者輸入
x=int(x) # 將字串型態轉換成數字型態
if x>200:
print("大於 200")
elif x>100:
print("大於 100,小於等於 200")
else:
print("小於等於 100")
Part 3:
# 四則運算
n1=int(input("請輸入數字一︰"))
n2=int(input("請輸入數字二︰"))
op=input("請輸入運算︰+, -, *, /:")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
elif op=="/":
print(n1/n2)
else:
print("不支援的運算")
謝謝 !
我同學超推薦你的影片,我今天看了以後覺得真的一口氣懂了好多事,真希望電腦課直接放影片就好哈哈,我一定會趁寒假看完這個系列
謝謝你的回饋,也幫我謝謝你的同學 :)))) 加油嘍 ~~~~~
彭彭所講的課,算是我在網路上找到最耐心最適合初學者的課程了,雖然可能不是講的最好的,但彭彭在視頻中一步一步慢慢講授慢慢回顧 是我個人認爲最適合初學者的課程!
謝謝你的回饋哪,希望對大家都有幫助 :)
感謝老師的教學,看來真的要下載程式自己跑一遍後才算自己的。
看留言也是一场精彩的教学,比如有人数双=的问题,很有见解!有意思~
对呀,大家都蛮认真在学习的呢 :)
謝謝老師的優質教學影片,很喜歡手把手的教學內容,我每部看完都有按喜歡,也已經訂閱您了!!!
剛好趁現在疫情期間可以在家自主學習.
加油。
感謝你的回饋哦,很高興看到這樣的訊息,也希望能持續對你有幫助 :)
講得真的很好,循序漸進,想聽你教c++
謝謝,有時間的話我會考慮看看 :)
@@cwpeng-course 辛苦老师!!!
謝謝老師的教學🙏
我問的問題下面有解答了!
到留言區看看 也可以增加知識👍
是呀,大家都有留下很多討論,很棒 👍👍
謝謝彭彭老師無私的分享,獲益良多!
很高興對你有幫助哦 :)
請問老師三個問題
1.
print(" ")跟print( )的差別:是(" ")直接命名;( )是進行裡面的變數運算嗎?
2.
op==的二個等於是什麼意思呢,如果用一個等於,不同的地方在哪裡?
3.
看了你RUclips上的免費教學覺得很有興趣, 您的教學平台販賣的線上課程, 是跟RUclips上的影片不同的地方是 內容更進階嗎?
很謝謝您提供這麼好的教學影片
第二個問題在下面留言有哦
1.
可以這樣想。
2.
== 是比較運算,= 是把資料放進變數中。
3.
內容其實沒有差異,不過付費平台上的問題我會盡量在一天內回應,RUclips 這邊我會比較慢處理。
也謝謝你的回饋 :)
第二個問題也是我想問的說,謝謝啦
謝謝提問第一個問題
感謝老師拯救了剛進台大資工才發現大一計程突然從c改python 的me⋯
哦哦哦,這讓我蠻意外的 XDDDD
謝謝老師!!我是最近開始自學的學生,覺得老師的教學對於新手很受用!還請老師多出類似影片!一定支持!!
謝謝你的回饋 :)
老師請問op是什麼意思呢?
其他單字可能都可以理解文意 想瞭解每個單字的意思才不會忘記
老師您的教學真的很好!我是剛入門程式領域想學python的人 您的講解真的很好
我猜是operator運算符吧
謝謝你的回饋,我心裡想的單字確實是 operator 哦 :)
教學邏輯非常清楚,很用心,謝謝
謝謝回饋,希望對你有幫助 :)
請問為什麼要用 if op=="+" 代表當使用者輸入+
而不能用 if op="+" (少一個=)
op=="+" 是等價關係
op="+" 是把+的值帶入op裡面存放
我覺得拉哈哈哈
感謝 @廖仲良 的回應,差不多就是那樣。
兩個等號是比較是否相等,一個等號是指定資料給變數。
感謝你的提問也感謝回答 解了我一個疑惑
我开始写成一个=了,还有加号没有写引号,对了怎么把字串的加号转换成符号呢
看留言長知識,感謝這樓的各位~
感謝老師的教學,內容很用心、表達很清楚
不客氣哦,謝謝你的回饋 :)
謝謝作者的製作。
謝謝你的回饋 ~
("看完之後關掉自己寫一次,唯一遺漏要打兩次==,我會多練習幾次,直到熟悉為止的,謝謝老師")
很棒的練習方式 :)
老師您好:您的教學影片真的非常棒,受益良多,但想要請教一個問題
我根據您的教學,自己再寫一次,最終的時候卻出現了以下問題:
Traceback (most recent call last):
File "condition.py", line 19, in
op= input("請輸入運算+,-,*,/:")
File "", line 1
以下是完整程式碼:
# -*- coding: utf-8 -*-
# 判斷式
# if False:
# print("True : 執行")
# else:
# print("False : 執行")
# x= input("請輸入數字:") # 取得字串形式的使用者輸入
# x= int(x) # 將字串型態轉換成數字型態
# if x>200:
# print("大於200!")
# elif x>100:
# print("大於100,小於等於200!")
# else:
# print("小於等於100!")
# 四則運算
n1= int(input("請輸入數字ㄧ:"))
n2= int(input("請輸入數字二:"))
op= input("請輸入運算+,-,*,/:")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
elif op=="/":
print(n1/n2)
else:
print("不知道!")
如果你是用Mac的電腦
執行時改成: python3 檔案名稱
感謝 @dot 的回應 :) 也可以試著重新打過那一行,有時候會不小心打到一些看不見的字元造成問題 ~
彭彭老師好,python3.10以後的版本已經支援switch,懇請也能做一隻影片,補充教學內容,感激不盡 !!!
感謝你的提醒,我會把這點考慮進來安排 :)
@@cwpeng-course 謝謝老師,期待ing
老師講的好清楚喔
謝謝呦 :)
謝謝老師 影片很清楚 多練習是成功的不二法門
是哦,多練習非常重要 ~
果真自己練習寫一次才知道會在哪裡卡關,謝謝老師。
不會呦,加油 :)
老師您好:
首先感謝老師的教學,讓我對python有基礎的認識。
我學習python的目的為做excel控制自動產生圖表
我有以下兩個問題:
1.除了基礎教學的地方之外,老師是不是有其它的影片對excel控制進行教學?會員頻道也沒關係。
2.以下是我寫的程式,可是無法達到我要的目的,可否請老師幫忙看我的程式哪裡有錯誤。謝謝老師
目的:使用者輸入4個數,然後這4個數從0開始各自+1,直到和輸入的4個數相同則各自停止。
x1=int(input("請輸入 0 ~ 9作為第一位數"))
x2=int(input("請輸入 0 ~ 9作為第二位數"))
x3=int(input("請輸入 0 ~ 9作為第三位數"))
x4=int(input("請輸入 0 ~ 9作為第四位數"))
n1=0
n2=0
n3=0
n4=0
if (n1
感謝彭彭老師🙏🏻🙏🏻🙏🏻
老師你好,
你的影片很仔細,因為我在復習過程中,發現這個頻道。
合輯的影片是跳著播放嗎? 上到下順序怪怪的
希望對你有幫助,應該是沒有跳著播放 XDDDD
教的超級清楚易懂!
謝謝你的回饋 ~~~~~
感謝老師,真的非常清楚
謝謝,老師,我學會一個簡單計算機,蠻有成就感的~
讚讚!
# 判斷式
if True:
print("True 執行")
else:
print("False 執行")
Part 2:
x=input("請輸入數字︰") # 取得字串形式的使用者輸入
x=int(x) # 將字串型態轉換成數字型態
if x>200:
print("大於 200")
elif x>100:
print("大於 100,小於等於 200")
else:
print("小於等於 100")
Part 3:
# 四則運算
n1=int(input("請輸入數字一︰"))
n2=int(input("請輸入數字二︰"))
op=input("請輸入運算︰+, -, *, /:")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
elif op=="/":
print(n1/n2)
else:
print("你到底在輸入三小")
感謝你的紀錄和分享 :)
Thanks for your teaching!
:)
x1=int(input("請輸入體重"))
x2=int(input("請輸入身高"))
a=(x1/(x2/100*x2/100))
print(a)
if a>35:
print("過度肥胖")
elif a>24:
print("過重")
elif a>18.5:
print("正常")
elif a
這個比較麻煩,必須在輸入的階段,就先去做偵測,例如:
x1=input("請輸入體重")
if x1.isdigit():
x1=int(x1)
else:
print("不正確的格式")
老師好,想先感謝老師的影片。
我看了老師打教學影片後買了一台電腦,想要朝工程師的方向邁,老師的教學很詳細,讓我不會對程式設計產生抵觸或是覺得自己很笨。真的非常感謝老師。
但這裡有個想請問老師,當我打完所有程式後,不知道為什麼必須在終端機op輸入的部分加上” ”的符號(“+”),他才能正常運算,若是直接打+則會出現錯誤。
加油嘍 :)
我們在判斷式中做比較運算,比較 op 和 "+" 是否相同,這是兩個字串的比較。如果你寫 op==+,那 ==+ 本身就是錯誤的語句了。
@@cwpeng-course 老師好,我在上面程式的部分是打op==“+”
但在下面終端機測試時不知道為什麼也必須打
”+”他才會運行,若是在終端機測試只打+他則會顯示錯誤😭
只要是 Python 程式在這個情境下,確實是要打 "+" 嘍,無論你是不是在終端機測試 ~
@@cwpeng-course 好的,謝謝老師。
老師好,我按照老師的code,第一次有在 "x=input('請輸入數字:')" 成功輸入數字,但是之後 "請輸入數字:" 就沒有再出現了,包含 "請輸入數字一: " 和 "請輸入數字二: " 都沒有跑出可以輸入的地方,請問要怎麼改善呢? 謝謝老師! 附上我的code
x=input('請輸入數字:') #取得字串形式
x=int(x) #將字串轉換成數字型態
if x>200:
print('大於200')
elif x>100:
print('大於100,小於等於200')
else:
print('小於等於100')
#四則運算
n1=int(input('請輸入數字一: '))
n2=int(input('請輸入數字二: '))
op=input('請輸入運算: +, - *, /:')
if op=='+':
print(n1+n2)
elif op=='-':
print(n1-n2)
elif op=='*':
print(n1*n2)
elif op=='/':
print(n1/n2)
else:
print('不支援運算')
我這邊測試起來相當正常呢 :)
根據實際的環境差異,有時候輸入提示不一定跟我完全一樣,只要你能夠正常打字並且得到結果,就是正確的程式嘍 ~
x=input("請輸入數字:") 要用雙引號 " 不是'
是不是你前面的程式瑪沒有#掉
謝謝老師的教學~ 希望自己能繼續學下去XD
加油加油!
自己測試過後
發現數字不能是有小數點的,查過才知道原來int的意思是轉換成整數
想請問彭彭老師,如果想要將字串轉換成小數,讓這個程式能運算小數點又該怎麼做呢?
(我是寫了一個elif op==“n1**n2”
n1輸入16
n2輸入0.5才發現問題的
果然自己寫寫看就會找到問題😂)
可以使用 float() 這個函式取代 int(),來把字串轉換成小數的形式哦 ~
兄弟。你的视频非常棒。很容易理解。不像有的教学,越看越糊涂,废话连篇, 很打击学习的积极性。 我有个小建议。有时间能否录制个系列;针对这些基本概念,具体能够解决哪些实际工作当中的应用问题,例子简单一点都没关系。这样的话,对初学者绝对会更加有效。视频一定会大火!期待。
感谢你的回馈和建议,我会试着在未来的影片中继续努力做更好一些 :)
感謝老師的分享和建議
不會,謝謝你的回饋 :)
看的出來老師一直很順手的加;和{} 哈哈哈
哈哈哈,嘿壓,畢竟以前寫程式都是要加的 ~
謝謝 彭彭老師 !!
不客氣 !!
講得真的很好!!!
謝謝 :)
我也覺得很好
老師 太棒了 萬分感謝。
耶!!!
真的常常寫成C語言 or C++的語法XD 太習慣
我也是會這樣 XD
謝謝彭彭老師教我們寫python
不會呦,加油 :)
彭彭老师你好,请问一下入门教程看完你还会出更厉害的教程吗?
持续规划发布中哦,不过主题太多很难满足每个人 ~
請問,我依照教學操作
卻出現File "", line 1的錯誤訊息
SyntaxError: unexpected EOF while parsing
但我把原來的 input("請輸入運算 +, -, *, /:") 這段改為 raw_input("請輸入運算 +, -, *, /:")
就可以正常執行
請問不是原來的input都視為字串嗎???為何還要改成raw_input
可能要先確認一下你執行的 Python 是否為第 2 版。如果是 Mac 電腦,執行時使用:python3 檔案名稱
@@cwpeng-course 老師請問python3 檔案名稱是什麼?
請問:
x=int(input(“請輸入數字”))
和
x=input(“請輸入數字”)
x=int(x)
有甚麼差別?
沒有差別,只是是否把程式簡短的寫成一行而已。
老師,這是我課後自己練習做的, 想請問一下如果我要加入判斷試確認輸入的第一組輸入 "當不是數字時, 自動回去再請使用者輸入一次" 要用那一個函式? or 工具呢?
a=int(input("請輸入第一組數字: "))
b=int(input("請輸入第二組數字: "))
print("請輸入運算符號:""+"",""-"",""*"",""/""");x=input() 後面就省略惹,因為跟你教的大同小異XD
你需要使用 Number.isInteger() 來判斷是否為整數,再利用迴圈和 break; 指令來完成錯誤後可以重新輸入的邏輯。
Q1:型別轉換詢問
想問為什麼把輸入的input數字用int()去做轉換,比如2不是本身就是數字嗎?
Q2:集合詢問
想問為什麼都放字串,print出來的結果還會帶一個單引號' ',這是不是就是固定形式 也不為什麼
dic ={"apple":"蘋果","bug":"蟲蟲"}
print(dic) #{'apple': '蘋果', 'bug': '蟲蟲'}
我自己將集合改寫如下,不確定這樣寫是不是允許的
print int float的解果會顯示 這個是代表什麼意義?
dic ={int:1,"bug":"蟲蟲",float:5.8}
print(dic) #{: 1, 'bug': '蟲蟲', : 5.8}
初學python 如果問了蠢問題 還請老師多多指教 感謝老師
1.
不是哦,使用者打 2,程式中實際拿到的字串型態的 "2"
2.
無論單引號還是雙引號在程式中都可以表示字串,所以那只是 Python 自己決定要用甚麼方式把資訊印出來給我們看而已。
int 和 float 都是 Python 內建的類別,所以你會看到那些資訊。可以先把後面的類別和物件學完之後會更有感覺~
@@cwpeng-course 想再請問老師點選源碼查看時出現刪節號,要怎麼樣才能展開那個刪節號號? 比如sort方法 reverse 預設是false,但我看源瑪卻看不到
num_list.sort()
(method)
sort(*, key: None = ..., reverse: bool = ...) -> None
再請老師幫忙回覆一下,感謝
多谢你的视频,很有帮助
不客气呦 :)
影片做得很棒 學到好多
讚讚,很高興對你有幫助 :)
彭老師好!
a={"+","-","*","/"}
x1=int(input("請輸入數字一"))
x2=int(input("請輸入數字二"))
op=input("請輸入運算式")
if op in a:
print(x1 (有將+-*/的字串轉成運算式的語法嗎?) x2)
else:
print("不支援此運算")
想要請教,像上面的程式,在python裡,有將+-*/的字串轉成運算式的語法嗎?
感謝彭老師
你可以試試看:
result=eval("3+4*2")
print(result)
打卡學習!感謝老師
不客氣呦 :)
想請問老師,如果想用字串來判斷來判斷也是用同樣的方法嗎?
因為剛剛試了好久,不管回答甚麼都只出現ture的回答
用字串判斷也是可以的,要看你的程式才有辦法確定可能的原因 ~
x=input("請輸入數字: ")
if x>"100":
print("大於100")
else:
print("小於100")
--------------------------------------------------
想請問老師
1.我在比較大小時使用字串形式(我不知道能不能這樣做)來比較,但無論我數字輸入多少,都會印出大於100(即使輸入的數字小於100也一樣),是哪邊寫錯了呢?
2.承上,如果比較大小時無法用字串形式來比較,那為什麼影片中的等於就可以呢?
謝謝老師的影片,講解的非常清楚,完全沒碰過程式學起來也沒問題(要搭配留言區使用),受益良多!
字串大小比較的時候是根據字元背後的數字在比較的,不是表面上看到的東西。例如 "a" 就會大於 "9",所以是可以比較的,只是大小關係和你想像中不同。至於等於的話就沒這個問題。
@@cwpeng-course 了解 謝謝老師回覆
好的老師 自己重頭到尾寫一次 像您學習~
加油哦 :)
謝謝老師的課程!不好意思想請教一下 如影片18:23 中我輸入完數字,輸入算式後卻出現以下
Please input number 1: 4
Please input number 2: 5
Please input calculation: +, -, *, /: +
Traceback (most recent call last):
File "condition.py", line 35, in
op=input("Please input calculation: +, -, *, /: ")
File "", line 1
+
^
SyntaxError: unexpected EOF while parsing
是因為沒有事先define op 這樣嗎? 但我回去檢查了我前面寫的也都跟老師寫的一模一樣 不知道哪裡出錯(如下方, Python 不讓我打中文所以只能用英文)
n1=int(input("Please input number 1: "))
n2=int(input("Please input number 2: "))
op=input("Please input calculation: +, -, *, /: ")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="/":
print (n1/n2)
elif op=="*":
print(n1*n2)
else:
print("We do not support this calculation")
如果你是 Mac 電腦的話,執行的時候試著用:python3 檔案名稱
這可能是版本的問題 ~
我是依BMI寫出這個算式。
n1=input("請輸入身高(m): ")
if n1.isdecimal():
n1=float(n1)
else:
print("不支援此種格式")
n2=int(input("請輸入體重(kg): "))
x2=n2/(n1*n1)
print(x2)
if x2
或許可以把 isdecimal() 換成 isnumeric()
@@cwpeng-course 謝謝回復~
謝謝老師,但是我自己寫的時候用蘋果電腦似乎跑不出來一樣的狀況QAQ 但老師在影片中的解說是理解的
Mac 執行時可以使用 python3 檔案名稱。如果有錯誤訊息可以先解讀錯誤訊息來看看發生了什麼事情。
請問老師為什麼/ 後面需要加冒號? 如果不加行嗎? op=input("請輸入運算: +,-
在雙引號中,只是字串的一部份,要不要加都可以。
感謝佛心的教學
老師 您的影片我看了很多次 想請問能否提供練習的題目或者推薦的網站呢 因為看了學其實都懂 但遇到題目貨問題想真的寫點什麼又腦袋空白的感覺
程式的題目練習可以參考 leetcode 這個網站,裡面有非常多程式問題,可以讓你在線上撰寫,並且直接知道有沒有正確哦。另外這個網站也是很多面試官會參考的網站。
如果題目太難,可以從不要看我影片中的程式,自己從無到有寫出一樣的程式開始。自己生出來和跟著我寫會是很不一樣的體驗,當然自己生出來的那個是真正要另外花時間去練習的。
@@cwpeng-course 謝謝老師我會持續支持你的非常感謝
謝謝哪 :)
2021/05/22
if True:
print("True 執行")
else:
print("False 執行")
x = input("請輸入數字: ") # 取得字串形式的使用者輸入
x=int(x) # 將字串型態轉換成數字型態
if x > 200:
print("大於200")
elif x > 100 :
print("大於 100 , 小於等於 200")
else:
print("小於等於 100")
# 四則運算
n1 = int(input("請輸入數字一: "))
n2 = int(input("請輸入數字二: "))
op=input("請輸入運算: +, -, *, / :")
if op == "+":
print(n1 + n2)
elif op == "-":
print(n1 - n2)
elif op == "*":
print(n1 * n2)
elif op == "/":
print(n1/n2)
else:
print("不支援的運算")
感謝紀錄 ~
想請問彭彭老師,n1=int(input(請輸入數字一:))
當中的int是甚麼意思呢? 是哪一個英文單字的縮寫嗎?
強制轉型,剛開始使用者輸入的型態是字串(string),字串型態無法做加減乘除運算,要先轉型成數字型態
感謝 @btocrk 的回應。int 是 integer 的縮寫,轉換字串型態成整數。
@@cwpeng-course 喔喔!謝謝彭彭老師解答XDD 我算是英文比較強項的人,想說如果能了解單字的意思的話能更容易記的用法跟定義,太感謝了!
讲的是真的好
谢谢哪 ~
老師請問如果想多op對一print應該怎麼寫呢?
一定必須分開如下
elif op=="apple"
print("fruit")
elif op=="banana"
print("fruit")
還是可以某種形式一起表示?
elif op=="apple","banana"
print("fruit")
你可以使用邏輯運算 or,代表兩邊的條件任一成立即可:
if op=="apple " or op=="banana":
print("fruit")
感謝老師!
謝謝!
老師您好: 我結合前面的單元(字典)寫了以下程式但是跑不出來,想請問哪裡出錯?
dic = {"一": 1, "二": 2, "": 3, "四": 4, "五": 5,
"六": 6, "七": 7, "八": 8, "九": 9, "零": 0}
dic2 = {v: k for k, v in dic.items()} # 一種反轉字典的方法
y = dic[input("請輸入單個中文數字Y:")]
z = dic[input("請輸入單個中文數字Z:")]
op = input("請輸入+或-")
if op == "+":
print(dic2.get(y+z))
elif op == "-":
print(dic2.get(y-z))
else:
print("ERROR")
dic 的 key - value 應該要反過來吧 ~
老师讲的很好,26号考计算机二级python了,望过。
谢谢,希望你已经过了 :))
raceback (most recent call last):
File "condition.py", line 13, in
op=input("請輸入運算:+,-,*,/")
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing
請問老師這是什麼意思?
表面上是說程式碼沒有寫完整,實際上要看看整隻程式比較好判斷哦 ~
謝謝,問題解決了
@@KS0219 怎么解决的我也是同样的问题 苦恼
請問後來是怎麼解決呢?我也遇到相同的問題
@@cwpeng-course 我把input改成raw_input就可以了 但我也不知道原因 這就要請教彭彭老師了 謝謝
另外我在程式中的第一行有貼這條# -*- coding: utf-8 -*- 我mac中的python才跑的起來
老師您好 我想問一下 op為甚麼只需要input而不用再加上int(我知道沒加int會是字串,但不太懂這個部分,它是因為"="是運算符號而不是數字的緣故嗎?
數字的部分轉成int 是為了運算(需要拿到值才能運算,字串是不能運算的),而op只是為了存取使用者輸入的運算符號,然後利用 if來判斷要進行加減乘除哪種運算而已,希望這樣解釋你能了解~
感謝 @育倫 的回應,就是這樣嘍 :)
了解了 感謝你們
請問為什麼在Mac環境下會出現
Traceback (most recent call last):
File "condition.py", line 13, in
op=input("please enter +,-,*,/:")
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing?
n1=int(input("please enter number1:"))
n2=int(input("please enter number2:"))
op=input("please enter +,-,*,/:")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
elif op=="/":
print(n1/n2)
else:
pirnt("Unknown Calculation")
可以把那行字刪除重新打過看看,有時候 Mac 會打出一些隱形的字元造成問題 ~
老師的講解很清楚,我正在嘗試數字一不輸入數字,請問有什麼語法可以判斷輸入的字串是數字?
可以使用字串的 isdigit() 方法,如下:
number=input("輸入數字")
if number.isdigit():
print("是數字")
@@cwpeng-course 老師您好,我看到這則跟您討論的留言後,想請教自己想將你最後的Example做延伸,
當輸入是數字繼續跑,故輸入你上面的留言,用 "isdigit()";
反之若輸入不是數字,想print("這不是數字阿??") 該如何寫他的判別式,自己上網都找不太到
@@yinchen7380
if number.isdigit():
print("是數字")
else:
print("......")
你是要這個嗎
@@和和周 這好讚,這堂剛好就在用if 判斷式,直接拿來用🤣
@@和和周 可是如果多打了這個,不就變成我就算輸了數字他也會跑出「是數字」,那如果我想要讓他在我輸數字時不要有動作,輸錯才print 「你打錯了喔」,該怎麼做呢
最後else 要加 :
才可以打上print ("不支援的運算")
是 else 哦 :)
@@cwpeng-course 老師謝謝您!!!
今天回來看以前的影片
老師的幫助很大!!!!
😁😁😁👍👍👍
老師好,想請問以下程式哪裡錯誤
程式碼部分:
n1=int(input("number1: "))
n2=int(input("number2: "))
op=input("notation+,-,*,/: ")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
elif op=="/":
print(n1/n2)
else:
print("no answer")
終端機部分:
number1: 10
number2: 20
notation+,-,*,/: *
Traceback (most recent call last):
File "haha.py", line 6, in
op=input("notation+,-,*,/: ")
File "", line 1
*
^
SyntaxError: unexpected EOF while parsing
謝謝老師
確認一下你的 Python 版本,如果是 Mac 的話執行的時候輸入:python3 檔案名稱
彭老師您好
我照著您的程式練習part 3部分
使用下面的Terminal執行會出現錯誤訊息如下
Traceback (most recent call last):
File "condition.py", line 15, in
op=str(input("請輸入運算︰+, -, *, /:"))
File "", line 1
+
^
SyntaxError: unexpected EOF while parsing
但若我使用左方Debug(Shift+Com+D)執行
可以跑出正確的結果
想請問彭老師,我遇到的問題是否安裝上面有錯誤?
或是有其他因素照成?
執行前記得存檔嘍。另外看看是否有安裝到 pylint 這樣的擴充套件,如果有的話,把擴充套件都先移除再試試 ~
我也出現同樣的問題,最後有解決到嗎?
澎澎老師 那個13行的input 跟11、12行的int一樣嗎? 如果不一樣的話 為什麼?
int(input(.......))是將輸入者輸入的字串轉換成數字型態的縮寫
int是將字串轉換成數字型態
input輸入的東西是字串
如有錯誤請大大改
希望能幫忙到@@
感謝 @黃世瑋 的分享,說明的很清楚 :)
1.請問以下我是否只需要輸入x=int(x)? int是一種功能?
x=input("請輸入數字: ") #取得字串形式的使用者輸入
x=int(x) #將字串轉換成數字型態
2.
請問op只是代號吧? 不是一個固定的功能代碼
"op=="為什麼要2個等於
== 代表比較運算,比較左右兩邊的資料是否相等。
下面老師ㄉ回復
感謝 @莊于申 的回覆 :)
我們先和使用者要求輸入,得到字串形式的資料,然後才透過 int() 將資料轉換成數字。都不能省哦。
老師您好:
我在輸入完後 會出現以下訊息是哪邊出了問題
我也仔細檢查過和老師的程式碼沒有相異處
卻出現以下訊息
Traceback (most recent call last):
File "condiction.py", line 11, in
op=input("plz enter: +, -, *, /: ")
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing
這是版本的問題,如果你是 Mac 確定有安裝 Python 3 的版本,執行時輸入:python3 檔案名稱
想請問彭彭老師,=和==的差別是什麼呢?
我在試作後面的簡易計算機的時候,自己打的是op="+",執行才發現有錯誤
回來看老師的教學,發現要打成op=="+"才正確
=是 把資料放進變數中
==是 比較運算
感謝 @蔡明翰 的說明 :)
彭老師您好:
以下是用加法的錯誤訊息
但進入else就可以跑得出來,請問是什麼問題呢?
Traceback (most recent call last):
File "condition1.py", line 3, in
op=input("please input: +, -, *, /: ")
File "", line 1
*
^
SyntaxError: unexpected EOF while parsing
把input改成raw_input
很可能你使用的是 Python 2 的版本問題,如果是 Mac 電腦,確認有安裝新版的 Python 之後,執行時使用:python3 檔案名稱
老師你好:
guess1 = input("which one of these is a fish?
\
A) Whale
B) Dolphin
C) Shark
D) Squid
\
Type A, B, C, or D ")
請問我要怎麼把顯示在終端機的游標設置在問句的後面呢?
不然都會出現在字串的最後面,這樣不好看
如果我們用終端機命令介面,這種基本的輸入模式,沒辦法做這樣的操作哦 ~ 通常還是再最後輸入,或許可以多加一些分隔符號 ~
@@cwpeng-course 了解 感謝老師的回覆
彭彭老师,很感谢您的讲解,作为一个才学了2天的初学者我学完这节课有一些问题:
当我写完四则运算之后可以跑没有问题,但是不能输入小数,于是我把代码改成了
n1=flote(input('请输入数字一:'))就可以输入小数了,但是输入整数就会报错,
那么我想问,如果我想随便输入数字都可以运行的话该怎么写代码。
第二个问题是,跑完程序出来的结果可能会是1.333333之类的,如果我想控制在2个小数点之内,
那么%.2f我应该在哪里插进去?谢谢老师
float 这个方法应该是可以输入整数没问题的,报错可以看看错误的缘由,或许不是因为 float 哦。
要处理格式化的数字,可以这样写:
a=1.3333333333
print("%.2f" % a)
想請問彭彭老師 python 能在程式裡更新版本嗎 還是我還要再下載一次 再將之前的東西匯進去
如果是指 Python 引擎的版本,沒辦法在程式中更新哦。
可以重新下載安裝,執行時就會是新的版本了。
@@cwpeng-course 謝謝彭彭老師
請問彭老師
關於中繼端(terminal)
print執行後
都會出現一條
PS F:\PYTHON\PY_Class> &XXXXXXXXXXXXXXXXXXXXXXXXXXXXondition.py. 的電腦路徑
要如何將它隱藏或是不顯示呢?
它好礙眼XD
你可能是用 VS Code 的輔助工具執行 ( 點擊執行按鈕 ),它為了適應各種情況會寫比較長一點。如果像影片中直接打命令執行就不會長這樣了。
我在練習寫作後一個四則運算小計算機的時候,輸入完operator後都會以下訊息,請問彭彭老師這該怎麼辦呢?
Traceback (most recent call last):
File "condition2.py", line 3, in
op=input('enter an operator: +, -, *, /: ')
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing
確認一下你的作業系統是 Mac 嗎?如果是的話可以試著用【python3 檔案名稱】來執行看看程式碼。
或者你把這個命令刪除全部重打一遍試試看,因為程式看上去沒什麼問題,或許有些看不見的字元藏在裡面。
@@cwpeng-course 謝謝老師。
彭彭老師 想請教一下
以下是我打的程式 我想問為甚麼我想寫條件為x是否等於200的時候會出現錯誤 無法被執行出來 但當我把=換成
要改==喔!
感謝 @李政祐 的說明 :)
澎澎老師,請教一下,第十三行寫的是op=input("輸入運算: +, -, *, /: "),但是無法執行運算,提示的的錯誤是Traceback (most recent call last):
File "condition1.py", line 13, in
op=input("输入运算: +, -, *, /: ")
File "", line 1
+
^
SyntaxError: unexpected EOF while parsing
這是什麼問題呢?
如果是 Mac 电脑,执行时使用:python3 档案名称
老師你好,我照著11:37秒的公式輸進Python會得不出東西~系統告訴我第二排的x=int(x)有誤,如下: Traceback (most recent call last): line 2, in ValueError: invalid literal for int() with base 10: '' 請問為什麼呢?謝謝
如果只看錯誤訊息,意思是你輸入的資料不是數字的型態。或許得實際看看你的程式碼和操作的方式會更有機會幫得上忙 ~
老師請教一下,下列的情況是甚麼原因呢?
程式碼如下:
n1=int(input("num1 : "))
n2=int(input("num2 : "))
op=input("+-x/ : ")
if op=="+":
print(n1+n2)
======================================
num1 : 1
num2 : 2
+-x/ : "+"
只能說可能和 Linux 的 Shell 程式有關,但我手邊沒有 Linux 的機器,無法精確的判斷原因,不好意思 @@a
謝謝老師回覆
想問我照著影片中輸入後,卻出現:enter number1: 5
enter number2: 6
enter:+, -, *, /: *
Traceback (most recent call last):
File "if.py", line 11, in
op=input("enter:+, -, *, /: ")
File "", line 1
*
^
SyntaxError: unexpected EOF while parsing
是為什麼呢?我是用mac
執行程式的時候,試著使用:python3 檔案名稱
彭彭老師:
我是初學者,安裝的Python版本是3.7.1 32-bit。目前跟著你的影片自行練習時,
if True
print("True 執行")
並且在Terminal的畫面執行
PS D:\Python> python condition.py
結果就出現了錯誤訊息如下:
File "condition.py" , line 2
if True
^
SyntaxError : invalid syntax
請問彭彭老師,哪邊出了問題呢?麻煩你幫我解答一下,謝謝....
記得加分號:
if True:
print("True 執行")
@@cwpeng-course 問題已經解決,謝謝老師
彭彭老師很常寫C唷~XD,這習慣不知為什麼有親切感,因為自己第一個語言也是C嗎?
打分號的習慣嗎,確實是很順手的哪 XDDDDD
TAB 可以縮排
if
elif : (else if)
else
是的,使用 Tab 縮排
彭彭老師, 請問為什麼會出現這個錯誤?
Please enter a number:12
Please enter another number:12
Please enter your calculations: +, -, *, /: -
Traceback (most recent call last):
File "if.py", line 15, in
op=input("Please enter your calculations: +, -, *, /: ")
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing
而且發現註解中有中文的話都會造成錯誤:
File "if.py", line 4
SyntaxError: Non-ASCII character '\xe5' in file if.py on line 4, but no encoding declared; see python.org/dev/peps/pep-0263/ for details
這可能是 Python 版本的問題,Mac 電腦確定有安裝最新的 Python 3 版本,執行時使用:python3 檔案名稱
老师你好,请问最后一组程式当中的四则运算当中,设置if值op时候,为什么是“==”而不是直接一个“=”呢。请问这两者有什么区别?谢谢🙏
一个 = 是指定运算,用途是把资料放进变数里。
两个 == 是比较运算,比较资料是否相等。
建议先观看前面关于基本运算的教学:
ruclips.net/video/bLRa4TZ99aY/видео.html
請問如果想要運算包含小數點的數字要怎麼改?
例如
n1=int(input("請輸入肌酸酐值Scr: ")) # Scr可能為有小數點的數字
n2=int(input("請輸入年齡: "))
op=input("請輸入 男 或 女: ")
if op=="男":
print(186*(n1**-1.154)*(n2**-0.203))
elif op=="女":
print(186*(n1**-1.154)*(n2**-0.203)*0.742)
else:
print("輸入錯誤")
把 int() 換成 float(),例如 float(input("請輸入小數"))