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

遇0重置计数的列表遍历求和最后一段结果缺失问题求解

问题成因与修复方案

问题成因

代码仅在遍历到值为0的元素时,才会触发累计和的追加逻辑。示例输入中最后一段连续非0值的末尾没有0作为结束标记,遍历完整个列表后,最后一段的累计和没有执行append操作,因此丢失。
另外你提供的代码还存在语法问题:Python要求循环体内的代码需要缩进,你贴出的for循环下的if判断没有缩进,运行会直接报错。

修复方案

遍历完整个列表后,额外执行一次累计和的追加操作即可。如果需要兼容输入末尾为0的场景,可以在追加前判断累计值是否大于0,避免添加无意义的0值。
修复后的完整代码如下:

splitlist2 = [1, 2, 3, 0, 1, 1, 1, 0, 2, 2, 2]
resultlist = []
count2 = 0
for i in splitlist2:   
    if i == 0:
        resultlist.append(count2)
        count2 = 0
    else:
        count2 += i
# 追加最后一段的累计和,非0判断兼容末尾为0的场景
if count2 > 0:
    resultlist.append(count2)

运行后输出[6, 3, 6],符合预期效果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 02:24:00