对要累积求和的数组元素的数量设置限制?

Setting a limit on the number of array elements to be cumulatively summed?

我有一个长度为 5 的数组,例如

array = [1,2,6,4,3]

我想要的是一个新的数组,它累加了一个最大设定数量的先前值,即 3:

return_array = [1,3,9,12,13]

使用 numpy 的 'cumsum' 函数似乎是一个很好的起点,但它似乎仅限于对整个元素范围求和,给出:

cumsum_array = np.cumsum(array)
cumsum_array = [1,3,9,13,16]

我是不是漏掉了什么?

我会使用 zip:

a_ = [0] * 2 + a
list(map(sum, zip(a_, a_[1:], a_[2:])))

> [1, 3, 9, 12, 13]