昨天開始看書學python,學到elif這邊的時候想試著寫加上while的邏輯,但這邊卡住了
=====程式碼如下=====
def getage(agenum):
while True:
if agenum<16:
print('can`t eat')
getage(int(input()))
continue
elif agenum<18:
print('close')
getage(int(input()))
continue
print('ya')
break
print(getage(int(input())))
=====以上=====
但輸入數字的時候很奇怪,如果直接輸入18,會回傳ya和None然後break
但搞不懂None是怎麼來的?
如果先輸入1,會回傳can`t eat
再輸入18,會回傳ya和can`t eat,然後不會break
之後再輸入數字都就都不會break了
想請教是哪裡有問題,寫了好久想不出來...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.122.53.87 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1590205131.A.1C1.html
推
05/23 12:13,
3年前
, 1F
05/23 12:13, 1F
→
05/23 12:13,
3年前
, 2F
05/23 12:13, 2F
推
05/23 12:16,
3年前
, 3F
05/23 12:16, 3F
→
05/23 12:16,
3年前
, 4F
05/23 12:16, 4F
→
05/23 12:16,
3年前
, 5F
05/23 12:16, 5F
→
05/23 12:16,
3年前
, 6F
05/23 12:16, 6F
推
05/23 12:41,
3年前
, 7F
05/23 12:41, 7F
推
05/23 12:43,
3年前
, 8F
05/23 12:43, 8F
推
05/23 12:44,
3年前
, 9F
05/23 12:44, 9F
→
05/23 12:47,
3年前
, 10F
05/23 12:47, 10F
→
05/23 12:48,
3年前
, 11F
05/23 12:48, 11F
→
05/23 12:48,
3年前
, 12F
05/23 12:48, 12F
→
05/23 12:59,
3年前
, 13F
05/23 12:59, 13F
感謝以上各位熱心大大,終於看懂問題了,謝謝<(_ _)>
※ 編輯: kslman (218.187.182.6 臺灣), 05/23/2020 16:44:55