跟隨 Al Sweigarts python 課程并嘗試修改他的 cat 代碼一些。我可以只使用 if 和 elif 語句輸入“除了 ValueError”,但我認(rèn)為使用 while 語句我搞砸了。我希望這個(gè)簡單的代碼在用戶輸入錯(cuò)誤的東西時(shí)重復(fù),這是目前有效的。我只需要輸入一些解決非整數(shù)的東西作為輸入。這與沒有使用 break/continue 語句有關(guān)嗎?print('How many cats do you got')numCats = int(input())while numCats < 0: print('That is not a valid number') print('How many cats do you got') numCats = int(input())if numCats >= 4: print('That is a lot of cats')elif numCats < 4: print('That is not a lot of cats')except ValueError: print('That was not a valid number')如果輸入無效數(shù)字,我希望代碼重復(fù),同時(shí)在非整數(shù)值后重復(fù)。不過,我無法通過除了 ValueError 部分。謝謝!
1 回答

白豬掌柜的
TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個(gè)贊
一個(gè)except塊需要一個(gè)try塊。您會(huì)在try塊內(nèi)找到異常,如果找到,except則運(yùn)行子句。
while True:
try:
print('How many cats do you got: ')
numCats = int(input())
if numCats >= 0:
break
else:
print('That was not a valid number')
except ValueError:
print('That was not a valid number')
if numCats >= 4:
print('That is a lot of cats')
elif numCats < 4:
print('That is not a lot of cats')
添加回答
舉報(bào)
0/150
提交
取消