You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python运行sum函数出现'int' object is not iterable报错如何解决?

问题原因

Python 内置的sum()函数对入参有明确要求:

  • 第一个参数必须是可迭代对象(例如列表、元组、集合等支持遍历的结构)
  • 第二个为可选参数,是累加的起始值,默认值为0

你传入的第一个参数是整数10,属于不可迭代的int类型,自然触发"int" object is not iterable报错。

解决方案

方案1:调整写法适配内置sum()规则

把需要累加的数值放到可迭代对象中作为第一个参数传入即可:

# 两个数累加
total = sum([10, 20]) 
print(total) # 输出30

# 多层累加也可以直接利用第二个起始参数简化写法,无需嵌套sum
total = sum([10, 20], 5)
print(total) # 输出35

# 嵌套写法也符合语法,只是不如上面的写法简洁
total = sum([5, sum([10, 20])])
print(total) # 同样输出35

方案2:检查是否遗漏前置自定义函数代码

如果教授给出的示例确实是sum(10,20)的写法,大概率是示例中提前定义了接收两个参数的自定义sum函数,你漏跑了这部分前置代码:

# 前置自定义sum函数代码
def sum(a, b):
    return a + b

# 之后再运行示例代码就不会报错
total=sum(10, 20) 
print(total)

total=sum(5, sum(10, 20))
print(total)

内容的提问来源于stack exchange,提问作者user16879601

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 05:27:02