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

Python用for循环计算0-100偶数和报int不可迭代错误如何解决

错误原因
  • 核心报错点:sum() 函数要求入参必须是可迭代对象(比如列表、元组、range序列等),你代码中传给sum()的i是单个整数,不属于可迭代对象,直接触发了类型错误。
  • 额外逻辑漏洞:你把total = 0写在了for循环内部,每次循环都会重置累加值,就算修复sum的调用问题,也无法得到正确的[0,100]偶数总和。
修复方案

方案1:循环累加(适合初学者理解执行逻辑)

将total的初始化移到循环外部,遇到偶数时直接累加到total即可,不需要调用sum函数:

total = 0
for i in range(0, 101):
    if i % 2 == 0:
        total += i
print(total)

方案2:极简写法(利用range特性直接调用sum)

range支持设置步长参数,直接生成0到100范围内的所有偶数序列,传给sum函数就能直接得到结果:

# range参数规则:range(起始值, 结束值(不包含), 步长)
print(sum(range(0, 101, 2)))

两种方案运行后输出结果均为2550,符合需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 19:48:03