9:16 有裝extension的話可以把想要註解的地方反白 之後打" " " 就會大範圍註解 9:16 If you have an extension, you can highlight the place you want to annotate After you hit "" ", you will get a wide range of annotations
彭彭老師, 請問為什麼會出現這個錯誤? 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
老師你好,我照著11:37秒的公式輸進Python會得不出東西~系統告訴我第二排的x=int(x)有誤,如下: Traceback (most recent call last): line 2, in ValueError: invalid literal for int() with base 10: '' 請問為什麼呢?謝謝
作者講的中肯,自己在不看影片的狀況下,自己在去模擬寫出來,真的才會變成是自己的知識。
謝謝作者的製作。
這點真的很重要,感謝幫我摘錄 :)
看了很多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("不支援的運算")
謝謝 !
彭彭所講的課,算是我在網路上找到最耐心最適合初學者的課程了,雖然可能不是講的最好的,但彭彭在視頻中一步一步慢慢講授慢慢回顧 是我個人認爲最適合初學者的課程!
謝謝你的回饋哪,希望對大家都有幫助 :)
我同學超推薦你的影片,我今天看了以後覺得真的一口氣懂了好多事,真希望電腦課直接放影片就好哈哈,我一定會趁寒假看完這個系列
謝謝你的回饋,也幫我謝謝你的同學 :)))) 加油嘍 ~~~~~
請問為什麼要用 if op=="+" 代表當使用者輸入+
而不能用 if op="+" (少一個=)
op=="+" 是等價關係
op="+" 是把+的值帶入op裡面存放
我覺得拉哈哈哈
感謝 @廖仲良 的回應,差不多就是那樣。
兩個等號是比較是否相等,一個等號是指定資料給變數。
感謝你的提問也感謝回答 解了我一個疑惑
我开始写成一个=了,还有加号没有写引号,对了怎么把字串的加号转换成符号呢
看留言長知識,感謝這樓的各位~
感謝老師的教學,看來真的要下載程式自己跑一遍後才算自己的。
是的,要親手寫過 :)
謝謝老師的優質教學影片,很喜歡手把手的教學內容,我每部看完都有按喜歡,也已經訂閱您了!!!
剛好趁現在疫情期間可以在家自主學習.
加油。
感謝你的回饋哦,很高興看到這樣的訊息,也希望能持續對你有幫助 :)
看留言也是一场精彩的教学,比如有人数双=的问题,很有见解!有意思~
对呀,大家都蛮认真在学习的呢 :)
講得真的很好,循序漸進,想聽你教c++
謝謝,有時間的話我會考慮看看 :)
@@cwpeng-course 辛苦老师!!!
謝謝老師!!我是最近開始自學的學生,覺得老師的教學對於新手很受用!還請老師多出類似影片!一定支持!!
謝謝你的回饋 :)
謝謝彭彭老師無私的分享,獲益良多!
很高興對你有幫助哦 :)
# 判斷式
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改python 的me⋯
哦哦哦,這讓我蠻意外的 XDDDD
請問老師三個問題
1.
print(" ")跟print( )的差別:是(" ")直接命名;( )是進行裡面的變數運算嗎?
2.
op==的二個等於是什麼意思呢,如果用一個等於,不同的地方在哪裡?
3.
看了你UA-cam上的免費教學覺得很有興趣, 您的教學平台販賣的線上課程, 是跟UA-cam上的影片不同的地方是 內容更進階嗎?
很謝謝您提供這麼好的教學影片
第二個問題在下面留言有哦
1.
可以這樣想。
2.
== 是比較運算,= 是把資料放進變數中。
3.
內容其實沒有差異,不過付費平台上的問題我會盡量在一天內回應,UA-cam 這邊我會比較慢處理。
也謝謝你的回饋 :)
第二個問題也是我想問的說,謝謝啦
謝謝提問第一個問題
謝謝老師的教學🙏
我問的問題下面有解答了!
到留言區看看 也可以增加知識👍
是呀,大家都有留下很多討論,很棒 👍👍
果真自己練習寫一次才知道會在哪裡卡關,謝謝老師。
不會呦,加油 :)
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("不正確的格式")
教學邏輯非常清楚,很用心,謝謝
謝謝回饋,希望對你有幫助 :)
老師您好:您的教學影片真的非常棒,受益良多,但想要請教一個問題
我根據您的教學,自己再寫一次,最終的時候卻出現了以下問題:
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 的回應 :) 也可以試著重新打過那一行,有時候會不小心打到一些看不見的字元造成問題 ~
感謝老師的教學,內容很用心、表達很清楚
不客氣哦,謝謝你的回饋 :)
("看完之後關掉自己寫一次,唯一遺漏要打兩次==,我會多練習幾次,直到熟悉為止的,謝謝老師")
很棒的練習方式 :)
老師請問op是什麼意思呢?
其他單字可能都可以理解文意 想瞭解每個單字的意思才不會忘記
老師您的教學真的很好!我是剛入門程式領域想學python的人 您的講解真的很好
我猜是operator運算符吧
謝謝你的回饋,我心裡想的單字確實是 operator 哦 :)
彭彭老师你好,请问一下入门教程看完你还会出更厉害的教程吗?
持续规划发布中哦,不过主题太多很难满足每个人 ~
謝謝作者的製作。
謝謝你的回饋 ~
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("不支援的運算")
感謝紀錄 ~
老師講的好清楚喔
謝謝呦 :)
彭彭老師好,python3.10以後的版本已經支援switch,懇請也能做一隻影片,補充教學內容,感激不盡 !!!
感謝你的提醒,我會把這點考慮進來安排 :)
@@cwpeng-course 謝謝老師,期待ing
老師好,我按照老師的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("請輸入數字:") 要用雙引號 " 不是'
是不是你前面的程式瑪沒有#掉
真的常常寫成C語言 or C++的語法XD 太習慣
我也是會這樣 XD
請問,我依照教學操作
卻出現File "", line 1的錯誤訊息
SyntaxError: unexpected EOF while parsing
但我把原來的 input("請輸入運算 +, -, *, /:") 這段改為 raw_input("請輸入運算 +, -, *, /:")
就可以正常執行
請問不是原來的input都視為字串嗎???為何還要改成raw_input
可能要先確認一下你執行的 Python 是否為第 2 版。如果是 Mac 電腦,執行時使用:python3 檔案名稱
@@cwpeng-course 老師請問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 謝謝回復~
請問:
x=int(input(“請輸入數字”))
和
x=input(“請輸入數字”)
x=int(x)
有甚麼差別?
沒有差別,只是是否把程式簡短的寫成一行而已。
==跟=的差別在哪裡啊
== 是比較運算:比較資料是否相同,回傳布林值。
= 是指定運算:把資料放進變數中。
==用在條件判斷,=則是用於變數值的指派
例如… if a==1:
……………………
上面是說,當a=1時,就執行……的動作,所以要寫 if a==1:(注意!末端
要加冒號:),若純粹只是要將數字1指派給變數a, 就只要寫a=1即可
請問是否表示只有在做四則運算時,才會使用比較運算? 那其餘判斷式使用的是指定運算嗎?還是看條件設定?
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
再請老師幫忙回覆一下,感謝
6:42
7:02
7:59 if true:
else
9:29 x=input(請輸入數字)
11:27 請輸入數字,指派變數,轉換成整數,if:…. else:….
15:57 加法
老師好,想先感謝老師的影片。
我看了老師打教學影片後買了一台電腦,想要朝工程師的方向邁,老師的教學很詳細,讓我不會對程式設計產生抵觸或是覺得自己很笨。真的非常感謝老師。
但這裡有個想請問老師,當我打完所有程式後,不知道為什麼必須在終端機op輸入的部分加上” ”的符號(“+”),他才能正常運算,若是直接打+則會出現錯誤。
加油嘍 :)
我們在判斷式中做比較運算,比較 op 和 "+" 是否相同,這是兩個字串的比較。如果你寫 op==+,那 ==+ 本身就是錯誤的語句了。
@@cwpeng-course 老師好,我在上面程式的部分是打op==“+”
但在下面終端機測試時不知道為什麼也必須打
”+”他才會運行,若是在終端機測試只打+他則會顯示錯誤😭
只要是 Python 程式在這個情境下,確實是要打 "+" 嘍,無論你是不是在終端機測試 ~
@@cwpeng-course 好的,謝謝老師。
教的超級清楚易懂!
謝謝你的回饋 ~~~~~
感謝彭彭老師🙏🏻🙏🏻🙏🏻
print(a*b/c) 怎样做到使用小数点后三位进行程式运算?
可以使用 round 函式,例如 print(round(a*b/c, 3))
請問老師為什麼/ 後面需要加冒號? 如果不加行嗎? op=input("請輸入運算: +,-
在雙引號中,只是字串的一部份,要不要加都可以。
澎澎老師 那個13行的input 跟11、12行的int一樣嗎? 如果不一樣的話 為什麼?
int(input(.......))是將輸入者輸入的字串轉換成數字型態的縮寫
int是將字串轉換成數字型態
input輸入的東西是字串
如有錯誤請大大改
希望能幫忙到@@
感謝 @黃世瑋 的分享,說明的很清楚 :)
無法在terminal 執行.py, 但城市可以run 是甚麼問題呢
要看看實際上打了什麼指令,出現什麼錯誤訊息了 ~
感謝老師,真的非常清楚
彭老師好!
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)
9:16 有裝extension的話可以把想要註解的地方反白
之後打" " " 就會大範圍註解
9:16 If you have an extension, you can highlight the place you want to annotate
After you hit "" ", you will get a wide range of annotations
很清楚的標註 :)
x=input("請輸入數字: ")
if x>"100":
print("大於100")
else:
print("小於100")
--------------------------------------------------
想請問老師
1.我在比較大小時使用字串形式(我不知道能不能這樣做)來比較,但無論我數字輸入多少,都會印出大於100(即使輸入的數字小於100也一樣),是哪邊寫錯了呢?
2.承上,如果比較大小時無法用字串形式來比較,那為什麼影片中的等於就可以呢?
謝謝老師的影片,講解的非常清楚,完全沒碰過程式學起來也沒問題(要搭配留言區使用),受益良多!
字串大小比較的時候是根據字元背後的數字在比較的,不是表面上看到的東西。例如 "a" 就會大於 "9",所以是可以比較的,只是大小關係和你想像中不同。至於等於的話就沒這個問題。
@@cwpeng-course 了解 謝謝老師回覆
用判斷式就可以寫出四捨五入的程式 程式如下:
x=input('數字:')
x=float(x) #float為浮點數
if x-x//1
感謝你的分享哦 :)
if x-x//1
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才跑的起來
老師你好,
你的影片很仔細,因為我在復習過程中,發現這個頻道。
合輯的影片是跳著播放嗎? 上到下順序怪怪的
希望對你有幫助,應該是沒有跳著播放 XDDDD
乳品小棧賣出一瓶鮮奶可賺50元,兩位工讀生時薪為150元,每天工作8小時,輸入一天賣出的鮮奶總瓶數N,程式自動計算乳品小棧當日利潤。若為利潤大於零,需顯示「淨賺」字串,反之則顯示「虧損」字串。利潤公式如下:當日利潤= 當日總營收(N *50) - 當日工讀費用
這個是智力測驗考題嗎 XDDD
n=int(input("輸入一天賣出的鮮奶總瓶數"))
x=(n*50)-(2*150*8)
if x>0:
print("淨賺")
else:
print("虧損")
@@wgadu 來不及了。 我python考式結束了。 被盪掉了
@@caesarhung2292 抱歉,來晚了,上周日才開始學習的。
@@wgadu 沒事的。 被盪就重修吧! 再學一次也是不錯的
想問最後的==,我想成因為要比較兩邊, 第一個=是op=的=, 第二個=是為了定義op=是右邊的+, -, *, /,這樣想對嗎
建議不用想這麼複雜,它的概念就是比較運算符號,比較兩邊資料是否相等。
個人理解:
「==」是「compare operation 比較運算」,也就是比較兩個資料是否相等,做完這個運算會回傳 True 或 False
例:
「x == 5」 的意思為「x 是否等於 5 ?」,是的話就回傳 True,否的話就回傳 False
「=」是「assign 指派 ( 不確定是不是這樣翻XD )」,也就是把某種資料裝進變數裡,建議可以把變數想像成一個容器,可以裝各式各樣的資料( 整數、浮點數、字元...... )
例:
「x = 5」的意思是「把 5 裝進 x」
謝謝,老師,我學會一個簡單計算機,蠻有成就感的~
讚讚!
老師您好:
首先感謝老師的教學,讓我對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
自己測試過後
發現數字不能是有小數點的,查過才知道原來int的意思是轉換成整數
想請問彭彭老師,如果想要將字串轉換成小數,讓這個程式能運算小數點又該怎麼做呢?
(我是寫了一個elif op==“n1**n2”
n1輸入16
n2輸入0.5才發現問題的
果然自己寫寫看就會找到問題😂)
可以使用 float() 這個函式取代 int(),來把字串轉換成小數的形式哦 ~
# coding:utf-8
# 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("不支援的運算")
老師我的編碼如上
但出現以下錯誤
raceback (most recent call last):
File "condition.py", line 13, in
op=input("請輸入運算: +, -, *, /: ")
File "", line 1
-
^
SyntaxError: unexpected EOF while parsing
煩請老師解答
老師我找到問題了
我在terminal執行時輸入 python3 condition.py就沒問題了
原本只有python condition.py
老師2個月前回覆:「這可能是 Python 版本的問題,Mac 電腦確定有安裝最新的 Python 3 版本,執行時使用:python3 檔案名稱」,我也有遇到這樣的問題,執行改python3 檔案名稱就可以了!
很高興你已經解決了,也謝謝 @Windy Yeh 幫忙引用回覆 :)
想問我照著影片中輸入後,卻出現: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 檔案名稱
老師請教一下,下列的情況是甚麼原因呢?
程式碼如下:
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
謝謝老師回覆
老師好,想請問以下程式哪裡錯誤
程式碼部分:
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 檔案名稱
老師您好:
我在輸入完後 會出現以下訊息是哪邊出了問題
我也仔細檢查過和老師的程式碼沒有相異處
卻出現以下訊息
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 檔案名稱
請問老師那現在有支援switch語法嗎
最新的 Python 3.10 有支援
1.請問以下我是否只需要輸入x=int(x)? int是一種功能?
x=input("請輸入數字: ") #取得字串形式的使用者輸入
x=int(x) #將字串轉換成數字型態
2.
請問op只是代號吧? 不是一個固定的功能代碼
"op=="為什麼要2個等於
== 代表比較運算,比較左右兩邊的資料是否相等。
下面老師ㄉ回復
感謝 @莊于申 的回覆 :)
我們先和使用者要求輸入,得到字串形式的資料,然後才透過 int() 將資料轉換成數字。都不能省哦。
謝謝老師的課程!不好意思想請教一下 如影片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 檔案名稱
這可能是版本的問題 ~
我在VS上的程序总显示语法错误,但是在IDLE上确可以执行(python3.8),用VS是很方便,但是老是出现和老师的程序有问题,实在很困扰,我的是OSX系统,例如cls,Mac上就要输入clear,一个问题就要纠结半天。。。。。。请老师指点下,究竟是用idel来学还是VS
您使用的是 Mac 电脑,和 Windows 会有些差异,例如执行时要用 python3 这个命令。
主要还是你得了解自己的环境,如果跟我影片中有差异的话,就更需要花点时间去研究,大概是这样。
Mac可以使用快捷鍵command+K來清除terminal的畫面
謝謝老師的教學~ 希望自己能繼續學下去XD
加油加油!
澎澎老師,請教一下,第十三行寫的是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 档案名称
想請問老師,如果想用字串來判斷來判斷也是用同樣的方法嗎?
因為剛剛試了好久,不管回答甚麼都只出現ture的回答
用字串判斷也是可以的,要看你的程式才有辦法確定可能的原因 ~
謝謝彭彭老師教我們寫python
不會呦,加油 :)
判斷式
Judgment
每篇留言都要回應才行 XDDDD
感謝佛心的教學
最後else 要加 :
才可以打上print ("不支援的運算")
是 else 哦 :)
@@cwpeng-course 老師謝謝您!!!
今天回來看以前的影片
老師的幫助很大!!!!
😁😁😁👍👍👍
請問為什麼在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 會打出一些隱形的字元造成問題 ~
彭彭老師, 請問為什麼會出現這個錯誤?
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 檔案名稱
老師你好,我照著11:37秒的公式輸進Python會得不出東西~系統告訴我第二排的x=int(x)有誤,如下: Traceback (most recent call last): line 2, in ValueError: invalid literal for int() with base 10: '' 請問為什麼呢?謝謝
如果只看錯誤訊息,意思是你輸入的資料不是數字的型態。或許得實際看看你的程式碼和操作的方式會更有機會幫得上忙 ~
請問1.為什麼輸入python condition.py 為執行程式碼 2.為甚麼op是變數
其實沒為什麼哦,第一個就只是固定的指令格式,電腦才能幫我們做事情。第二就是寫:變數名稱=資料,就可以建立變數使用變數了。
請問如果想要運算包含小數點的數字要怎麼改?
例如
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("請輸入小數"))
兄弟。你的视频非常棒。很容易理解。不像有的教学,越看越糊涂,废话连篇, 很打击学习的积极性。 我有个小建议。有时间能否录制个系列;针对这些基本概念,具体能够解决哪些实际工作当中的应用问题,例子简单一点都没关系。这样的话,对初学者绝对会更加有效。视频一定会大火!期待。
感谢你的回馈和建议,我会试着在未来的影片中继续努力做更好一些 :)
老師您好: 我結合前面的單元(字典)寫了以下程式但是跑不出來,想請問哪裡出錯?
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 應該要反過來吧 ~
請問要怎麼直接把程式碼全部選取前面加上# 變成註解? 感恩回答
選取後按 ctrl+/
謝謝 彭彭老師 !!
不客氣 !!
感謝老師的分享和建議
不會,謝謝你的回饋 :)
講得真的很好!!!
謝謝 :)
我也覺得很好
請問老師,‘==’跟‘=’有什麼不一樣的意義?
一個等號是指定資料到變數中,兩個等號是比較運算。
@@cwpeng-course 剛好也在找這個 == 雙等號的意思,完全白板的學習者,果然有人跟我有同樣的問題,哈哈
謝謝老師,但是輸入
print(n1+n2)
無法跑出中文跑出亂碼,這該如何解決呢
注意是不是忘了加上冒號
感謝 @D2 的回覆 :) 如果是 Mac 電腦執行時請輸入:python3 檔案名稱
彭彭老師 想請教一下
以下是我打的程式 我想問為甚麼我想寫條件為x是否等於200的時候會出現錯誤 無法被執行出來 但當我把=換成
要改==喔!
感謝 @李政祐 的說明 :)
老師好,我
x=input("請輸入數字: ")
x=int(x)
If x>100:
Print("大於 100" )
else:
print("小於等於 100")
然後x=int(x)顯示name 'x' is not difined
想問應該如何處理
有點奇怪,是否有更完整的程式或錯誤訊息可以看看呢 ~
看的出來老師一直很順手的加;和{} 哈哈哈
哈哈哈,嘿壓,畢竟以前寫程式都是要加的 ~
老師的講解很清楚,我正在嘗試數字一不輸入數字,請問有什麼語法可以判斷輸入的字串是數字?
可以使用字串的 isdigit() 方法,如下:
number=input("輸入數字")
if number.isdigit():
print("是數字")
@@cwpeng-course 老師您好,我看到這則跟您討論的留言後,想請教自己想將你最後的Example做延伸,
當輸入是數字繼續跑,故輸入你上面的留言,用 "isdigit()";
反之若輸入不是數字,想print("這不是數字阿??") 該如何寫他的判別式,自己上網都找不太到
@@yinchen7380
if number.isdigit():
print("是數字")
else:
print("......")
你是要這個嗎
@@和和周 這好讚,這堂剛好就在用if 判斷式,直接拿來用🤣
@@和和周 可是如果多打了這個,不就變成我就算輸了數字他也會跑出「是數字」,那如果我想要讓他在我輸數字時不要有動作,輸錯才print 「你打錯了喔」,該怎麼做呢
老師,我的電腦螢幕出現以下文字,請問怎麼辦呢?
PS C:\Users\user> python condition.py
C:\Users\user\AppData\Local\Programs\Python\Python38-32\python.exe: can't open file 'condition.py': [Errno 2] No such file or directory
PS C:\Users\user> python condition.py
要先用 VS Code 開啟你程式所在的資料夾哦,快速開始的影片裡有提到,可以回顧看看 :)
請問彭老師
關於中繼端(terminal)
print執行後
都會出現一條
PS F:\PYTHON\PY_Class> &XXXXXXXXXXXXXXXXXXXXXXXXXXXXondition.py. 的電腦路徑
要如何將它隱藏或是不顯示呢?
它好礙眼XD
你可能是用 VS Code 的輔助工具執行 ( 點擊執行按鈕 ),它為了適應各種情況會寫比較長一點。如果像影片中直接打命令執行就不會長這樣了。
最後的範例程式用"+"字串的方式去做判斷,跟用'+'字元的方式去判斷有何差異嗎,我試起來好像都可以。
沒有差異哦,Python 無論是用雙引號 "+" 或是單引號 '+',都是字串的意思。
沒有像 Java 或某些語言一樣把字元獨立分開看待。
想請問彭彭老師,n1=int(input(請輸入數字一:))
當中的int是甚麼意思呢? 是哪一個英文單字的縮寫嗎?
強制轉型,剛開始使用者輸入的型態是字串(string),字串型態無法做加減乘除運算,要先轉型成數字型態
感謝 @btocrk 的回應。int 是 integer 的縮寫,轉換字串型態成整數。
@@cwpeng-course 喔喔!謝謝彭彭老師解答XDD 我算是英文比較強項的人,想說如果能了解單字的意思的話能更容易記的用法跟定義,太感謝了!
四則運算 檢查四次與彭彭老師一模一樣但卻無法執行+ - * / 輸入數字是可以的
檔案名輸入python3 condition.py
試試看~
感謝 @Joy Lin 的協助 :)
老師好 老師的影片很棒,我看了有懂,可是我的四則運算程式不知道為什麼跑不出來?
n1=int(input("請輸入數字一: "))
n2=int(input("請輸入數字二: "))
op=input(("請輸入運算: +, -, *, / : ")
if op=="+":
print(n1+n2)
elif op=="-":
print(n1-n2)
elif op=="*":
print(n1*n2)
它一直出現錯誤 "^" 在 line 4 if op=="+":的冒號處,那我該怎麼修改呢?
另外,我的 n1/n2/op 的顏色為什麼不是和老師的一樣是白色的呢?麻煩老師有空或者其他同學幫忙解答,感謝。
會不會是你op那邊多輸入了(
感謝 @李瑋翰 的回應,看起來確實有可能是這個問題 ~
想請教最後四則運算op後面的兩個等號==是程式規定的嗎,用一個等號就無法
兩個等號是比較運算,比較資料是否相同,一個等號是指定運算,不同的意思。
老師您好!請問為什麼在四則運算中,當我在terminal 中輸入+或-或*或/時 ,一定要連同引號”輸入,
即是”+”,才能運算,不然就會一直出現錯誤如下:
op=input(“Enter +,-,*,/ : ”)
File “”, line1
+
^
SyntaxError: unexpected E0F while parsing.
求教🙏🙏🙏🙏
input輸入字串
字串不能做運算
感謝 @和和 周 的說明哦 :)
老師好, 我之前編輯執行程式都沒問題, 但是今天在"Terminal"視窗中下"python test2.py" 執行卻無法跑程式, 顯示一串錯誤訊息 :
PS D:\python training> python test2.py
python : 無法辨識 'python' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,
如果包含路徑的話,請確認路徑是否正確,然後再試一次。
位於 線路:1 字元:1
+ python test2.py
+ ~~~~~~
+ CategoryInfo : ObjectNotFound: (python:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
需要用主視窗的右上角的"綠色三角形"icon 才可以執行, (不知道這樣外行的敘述老師瞭不瞭解), 好像是無法與 python 連結? 是否是哪裡有更新..導致在 visual studio code 中的python連結失效?
應該如何修復? 謝謝
確認是否安裝了一些額外的 VS Code 擴充套件,可能會影響到原始的 Python 執行方式。
左邊選單中有一個擴充套件的管理工具,移除任何和 Python 有關的東西後重新開啟 VS Code 試試看 ~