比如我一个array或者list,= [2, 1, -1, 3, 5],怎么求它的累加和?
上面那个list的累加和是[2, 3, 2, 5, 10]。
谢谢各位大佬!
2个回答
numpy里有cumsum,就是累加和的意思
>>> import numpy as np
>>> np.cumsum([1, 2, 1])
array([1, 3, 4])
补充一个来自python自带的模块itertools的accumulate函数,与numpy的cumsum不同的是它会默认返回一个迭代器。而且当传入一个函数时,可以支持求和以外的其它操作:
from itertools import accumulate
>>> list(accumulate([4,2,3]))
[4, 6, 9]
>>> list(accumulate([4,2,3], max))
[4, 4, 4]