使用Python While循环求1到N偶数和的代码报错求助
问题排查与修复
你的代码存在两个核心问题:
缩进错误
代码中count = 2、sum = 0这两行带有多余缩进,Python对缩进层级要求严格,这些变量定义需和number = int(input())处于同一层级,否则会直接触发IndentationError报错。变量名冲突
使用了Python内置函数sum作为自定义变量名,这会覆盖内置函数的原有功能,属于不良编程习惯,建议改用total这类不会冲突的名称。
另外,你的代码逻辑可以优化:既然目标是遍历偶数,没必要每次加1再判断奇偶,直接让count每次递增2,就能省去if判断步骤,提升运行效率。
优化修复后的代码
number = int(input()) count = 2 total = 0 while count <= number: total += count count += 2 print(total)
保留原逻辑仅修复错误的版本
number = int(input()) count = 2 total = 0 while count <= number: if count % 2 == 0: total += count count += 1 print(total)
内容的提问来源于stack exchange,提问作者Ankita JHA
相关产品推荐
相关产品推荐

