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

Python如何对嵌套列表指定索引位置的数值进行累加求和

嵌套列表指定数值累加问题解决方案

核心错误点

  • return 语句缩进层级错误,位于for循环内部:函数第一次遍历子列表完成累加后就直接返回了结果,没有完成所有子列表的遍历,因此只能得到第一个子列表索引1位置的数值。
  • 全局变量sumDurationInSecond使用不合理:未做初始化会触发未定义报错,且多次调用函数时会累加历史运行结果,不符合单次调用单次计算的需求。
  • 补充:函数名存在拼写错误,定义的totalInSecod缺少字母n,调用时如果拼写不一致会触发函数未找到错误。

修复方案

标准写法

def totalInSecond(someRandomData):
    # 函数内部初始化累加变量,避免依赖全局变量
    sumDurationInSecond = 0
    for value in someRandomData:
        sumDurationInSecond += value[1]
    # 循环完全执行后再返回结果
    return sumDurationInSecond

简化写法

利用Python内置的sum()函数可以直接一行实现需求:

def totalInSecond(someRandomData):
    return sum(item[1] for item in someRandomData)

调用时注意修正函数名拼写即可:

print(totalInSecond(dataRand))

测试你给出的dataRand示例,返回结果为10800,符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 18:21:03