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

Python中如何对列表元素进行逐次累加生成前缀和结果列表

实现列表累加(前缀和)的两种常用方案

方法1:手动遍历实现(易理解,无额外依赖)

逻辑非常简单,全程自己控制计算流程,适合新手理解实现原理:

my_list = [2, 4, 5, 8]
# 先处理边界:如果列表为空直接返回空即可
if not my_list:
    res = []
else:
    # 初始化结果列表,先放入第一个元素
    res = [my_list[0]]
    for num in my_list[1:]:
        # 每次取结果列表最后一个已经算好的累加值,和当前元素相加后追加到结果里
        res.append(res[-1] + num)
print(res)

运行输出:[2, 6, 11, 19]

方法2:使用内置itertools.accumulate(简洁高效)

Python 3.2及以上版本的标准库已经提供了官方实现的累加工具,不需要自己写循环,执行效率更高:

from itertools import accumulate

my_list = [2, 4, 5, 8]
res = list(accumulate(my_list))
print(res)

运行输出同样为[2, 6, 11, 19]


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 10:06:01