我应该如何解决-'int'对象不可迭代?

时间:2019-12-08 14:35:03

标签: python python-3.x function sum int

与其他问题不同,我使用循环结构得到此错误而没有

这是代码

def makes_twenty(n1,n2):
    return ( (sum(n1, n2) == 20) or ((n1 == 20) or (n2 == 20)) )

我收到的错误- 'int' object is not iterable Screenshot of the code with error

具有讽刺意味的是,如果我改变这个东西- sum(n1, n2) 变成这样的东西- (n1 + n2) 该代码工作正常。 Screenshot of corrected code 我不知道这里发生了什么。

1 个答案:

答案 0 :(得分:1)

python中的sum函数采用第一个参数作为可迭代对象。您可以在n1之类的列表中传递n2sum([n1, n2])。由于n1是整数sum函数无法对其进行循环,因此错误'int' object is not iterable

希望这会有所帮助。