Why am I getting Typeerror: 'int' object not iterable

Why am I getting Typeerror: 'int' object not iterable

我正在编写一个简短的程序来获取十个数字并将它们重新打印为列表,但将低于一定数量的数字替换为零。首先,'input' 不起作用并提示我提供数字。其次,对于主函数中的第二个 '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()

for i in 10: 是您的错误来源;它应该是 for i in range(10): 而不是。

你不能遍历一个数字,试试:

for i in range(10):

参考: https://docs.python.org/2/library/functions.html#range