我運行的代碼可能會出錯,但我想運行它只要 沒有錯誤。只要沒有錯誤,如何運行while循環
我想過這樣的事情:
while ValueError:
try:
x = int(input("Write a number: "))
except ValueError:
x = int(input("You must write a number: "))`
我運行的代碼可能會出錯,但我想運行它只要 沒有錯誤。只要沒有錯誤,如何運行while循環
我想過這樣的事情:
while ValueError:
try:
x = int(input("Write a number: "))
except ValueError:
x = int(input("You must write a number: "))`
你是相當接近
while True:
try:
x = int(input("Write a number: "))
break
except ValueError:
print("You must write a number: ")
要了解更多關於異常處理,請參考documentation
感謝您@Padraic ...用於不用大腦! –
怎麼樣一個'else'塊? – Zizouz212
@ Zizouz212更多* Pythonic *,這更直觀*。你可以選擇你喜歡的任何東西! :) –
作爲除了Bhargav的回答,我想我會提一個選項:
while True:
try:
x = int(input("Write a number: "))
except ValueError:
print("You must write a number: ")
else:
break
執行try
語句。如果拋出異常,則except
塊將接管並運行。如果沒有拋出異常,則執行else
塊。不用擔心,如果執行except
塊,else
塊將不會被調用。 :)
此外,你應該注意到,這個答案被認爲是更Pythonic,而Bhargav的答案可以更容易閱讀和更直觀。
@jonrsharpe你閃亮的金錘怎麼了? –
@BhargavRao沒有[標籤:蟒蛇]在最初的修訂版本(或沒有在[標籤:python-3.x]金牌徽章,取決於你如何看待它!) – jonrsharpe