作者Dong0129 (阿東)
看板Python
標題[問題] 關於判斷式的問題...
時間Sun Mar 1 22:33:21 2015
各位前輩大家好,
今晚在寫判斷式時遇到一個問題...
def a(b):
if b>1:
return 'A'
elif b==1:
return 'B'
else:
return 'C'
請問為什麼我的return都一直回傳A呢?
P.S 抱歉忘了說明,我是利用raw_input把輸入丟進函式,如果直接帶值進去會跑出正常
的結果!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.127.233
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1425220404.A.72B.html
1F:推 fischcheng: 你的def後面是不是少了一個: 03/01 22:37
抱歉@@已補上~
2F:→ alibuda174: 因為你傳入的b超過1... 03/01 22:48
我呼叫兩次函式丟兩個東西進去,分別符合不同的條件,可是都回傳A...
※ 編輯: Dong0129 (220.137.127.233), 03/01/2015 22:57:40
所以我很納悶....謝謝你的示範...
※ 編輯: Dong0129 (220.137.127.233), 03/01/2015 23:28:12
5F:→ tiefblau: raw_input吃進來是string 03/01 23:36
謝謝您!我找看看有沒有其他抓輸入的方法!
※ 編輯: Dong0129 (220.137.127.233), 03/01/2015 23:40:00
6F:推 tiefblau: 轉型:加個b = int(b) 或是 用input()吃進來 推薦第一個 03/01 23:42
7F:→ tiefblau: 因為python3就沒raw_input了 還可避免人家輸入奇怪東西 03/01 23:43
謝謝您的幫忙,受益良多,謝謝
※ 編輯: Dong0129 (220.137.127.233), 03/01/2015 23:44:18
9F:→ mikapauli: str和int的比較不會Error嗎? 03/02 11:54
10F:→ uranusjr: Python 2 不會, 所以你知道為什麼上面那篇大家都推 3 了 03/02 11:58