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

Python统计列表可被指定数整除元素个数的函数输出异常排查

你的代码存在2个可确认的问题:

  • print(result)被放置在循环内部的if判断分支中,每匹配到一个符合条件的元素就会打印一次当前的累计值,而非输出最终的统计结果。
  • 你描述的输出3\n2和你贴出的代码运行结果不匹配,你当前贴出的代码传入[1,3,6,2,4]运行后,实际会输出1\n2\n3(对应匹配到6、2、4三个元素时的三次累计值打印),你大概率是存在其他未贴出的重复调用函数、或修改了入参的代码。

修正方案非常简单,把打印语句移到循环外部即可,统计完所有元素后再输出最终结果:

def listDivide(numbers, divide = 2):
    result = 0
    for i in numbers:
        if i % divide == 0:
            result += 1
    # 所有元素遍历完成后再打印结果
    print(result)
    return result

listDivide([1 ,3 ,6 ,2 ,4])

修正后代码运行输出为3,和预期统计结果一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 12:42:03