On Jul 19, 4:28 pm, Peter Otten <__pete...@web.de> wrote:
> dhruvbird wrote:
> >   I have a list of integers: x = [ 0, 1, 2, 1, 1, 0, 0, 2, 3 ]
> >   And would like to compute the cumulative sum of all the integers
> > from index zero into another array. So for the array above, I should
> > get: [ 0, 1, 3, 4, 5, 5, 5, 7, 10 ]
> >   What is the best way (or pythonic way) to get this.
>
> Homework?

not really :)

It's just that I was wondering if a built-in function for doing such
things (which I find myself doing increasingly with an explicit loop)
exists.

Regards,
-Dhruv.

>
> >>> def cumulative_sum(values, start=0):
>
> ...     for v in values:
> ...             start += v
> ...             yield start
> ...>>> list(cumulative_sum([ 0, 1, 2, 1, 1, 0, 0, 2, 3 ]))
>
> [0, 1, 3, 4, 5, 5, 5, 7, 10]
>
> Peter

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to