2015-02-05 174 views
1

我正在寫一個簡短的程序,以十個數字並將它們重新打印爲一個列表,但將其替換爲零以下的特定數量。首先,「輸入」不起作用,並促使我給出數字。第二我得到'TypeError:'int'對象不可迭代'爲主函數中的第二個for循環。有任何想法嗎?爲什麼我會得到Typeerror:'int'object not iterable

amx = [] 

def validamount(amount, limit): 
    if amount >= limit: 
     return amount 
    else: 
     return 0 

def main(): 
    for i in 10: 
     amx.append(int(input())) 
    for i in 10: 
     print(validamount(amx[i], 5)) 

main() 
+1

'因爲我in'通過集合的元素,如列表或字典用於循環。 '10'不是一個集合,你在循環什麼? – Barmar 2015-02-05 22:06:11

+1

數字'10'不是一個列表,它只是一個數字。你不能迭代它。我猜你想要'範圍(10)'。 – SethMMorton 2015-02-05 22:06:19

+0

好的 - 範圍(10)。現在它完美地工作。沒有編碼好幾個月,愚蠢的錯誤。 – mistermarko 2015-02-05 22:11:55

回答

2

for i in 10:是您的錯誤的來源;應該是for i in range(10):

相關問題