[英]How to break a while loop upon an empty input python?
我有一個代碼,要求用戶輸入兩個整數,用“”分隔。 只要用戶不輸入任何內容,這應該會繼續,從而導致 ValueError 並打破 While 循環。 但是,我無法弄清楚我做錯了什么:
def syote():
koepisteet_all = []
harjoitukset_all = []
while True:
koepisteet, harjoitukset = input('Koepisteet ja harjoitusten määrä: ').split()
if ValueError:
break
else:
koepisteet_all.append(koepisteet)
harjoitukset_all.append(harjoitukset)
print(koepisteet_all)
print(harjoitukset_all)
if __name__ == "__main__":
syote()
如所願,我確實收到了一個 ValueError "ValueError: no enough values to unpack (expected 2, got 0)",但代碼停止運行。
你需要一個try/except
結構:
ValueError
(由於輸入錯誤),則停止break
def syote():
koepisteet_all, harjoitukset_all = [], []
while True:
try:
koepisteet, harjoitukset = input('Koepisteet ja harjoitusten määrä: ').split()
koepisteet_all.append(koepisteet)
harjoitukset_all.append(harjoitukset)
except ValueError:
break
print(koepisteet_all)
print(harjoitukset_all)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.