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

Python列表连续相同元素求和代码结果不符问题排查

现有代码问题排查
  • 核心逻辑判断错误:if number == number+1: 是恒不成立的表达式,任何数字加1后都不可能等于自身,因此循环每次都会进入else分支,每次累加后直接将结果存入新列表,最终输出的是原列表的前缀和数组,和需求完全不符。
  • 缺少连续组判断逻辑:没有记录上一组的数值,无法识别当前数字是否和前序数字属于同一个连续相同组,无法控制累加和存入结果的时机。
  • 命名不规范:使用Python内置类型名list作为自定义变量名,会覆盖内置list的功能,可能引发后续未知错误。
正确实现代码
nums = [1,1,4,4,4,0,1]
new_list = []
if not nums:
    print(new_list)
    exit()
sum_ = nums[0]
prev = nums[0]
for number in nums[1:]:
    if number == prev:
        sum_ += number
    else:
        new_list.append(sum_)
        sum_ = number
        prev = number
# 补充存入最后一组的和
new_list.append(sum_)
print(new_list)
运行验证

上述代码运行输出结果为[2, 12, 0, 1],和预期结果完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 15:00:05