我的代碼如下:如果語句錯誤:ValueError異常:無效的字面INT()基數爲10:「」和亂序INT()的
allnums = []
odds = []
evens = []
number = 0
while True:
number = input("Enter a number or type 'done':")
if number.lower() == 'done':
print("=============================")
print("Your even numbers are", str(evens))
print("Your odds numbers are", str(odds))
print("=============================")
print("Your smallest number is '"+str(allnums[0])+"'")
break
if int(number) % 2 == 0:
evens.append(number)
evens.sort()
allnums.append(number)
allnums.sort()
if int(number) % 2 != 0:
odds.append(number)
odds.sort()
allnums.append(number)
allnums.sort()
else:
print("Invalid input")
我試圖創建一個程序,讀取數字列表並確定最低值,同時還提供偶數和奇數的列表。我遇到兩個問題與我的代碼,其中最小的數字是不是經常正確,例如:
Enter a number or type 'done':33
Enter a number or type 'done':4
Invalid input
Enter a number or type 'done':6
Invalid input
Enter a number or type 'done':4
Invalid input
Enter a number or type 'done':6
Invalid input
Enter a number or type 'done':7
Enter a number or type 'done':44
Invalid input
Enter a number or type 'done':88
Invalid input
Enter a number or type 'done':done
=============================
Your even numbers are ['4', '4', '44', '6', '6', '88']
Your odds numbers are ['33', '7']
=============================
Your smallest number is '33'
我也得到了以下錯誤,當我使用只是一個空格(」「)作爲一個答案,這我想編寫一個Print(「無效輸入」)響應的東西,是不是數字或完成,但結果總是在:
Traceback (most recent call last):
File "XXXX", line 17, in <module>
if int(number) % 2 == 0:
ValueError: invalid literal for int() with base 10: ' '
我知道這大多與事件的順序做,但什麼我錯過了嗎?
仍返回相同 '回溯(最近最後一次通話): 文件 「XXXX」,第17行,在 如果INT(數字)%2 == 0: ValueError異常:無效的字面INT()與基地10:''' –
maaier
你確定,我測試了它,給了我完美的結果..等待粘貼輸出 –
啊,我沒有通行證。現在導致明顯的無效響應。真棒:) – maaier