如何将列表中的每个项目添加到Python中的前一项?

时间:2016-08-26 17:29:11

标签: python list

我有一个列表,我想将列表中的每个元素添加到上一个元素中。例如,如果我有列表<jsp:include page="header.jsp" />,我希望程序输出(1,1,3,3,4)

3 个答案:

答案 0 :(得分:2)

[sum(a[:i]) for i in range(1,len(a)+1)]

可能是最简单的方法......我猜......

numpy.cumsum(a)

也会起作用我认为

答案 1 :(得分:2)

使用itertools.accumulate

>>> import itertools
>>> list(itertools.accumulate([1,1,3,3,4], lambda total,el: total+el))
[1, 2, 5, 8, 12]

免责声明:在python 3.2中添加

答案 2 :(得分:1)

for i in range(1, len(arr)):
    arr[i] += arr[i - 1]

比Joran Beasley循环更有效率