]> granicus.if.org Git - python/commitdiff
Add recipe to itertools doc.
authorRaymond Hettinger <python@rcn.com>
Wed, 1 Dec 2010 10:49:19 +0000 (10:49 +0000)
committerRaymond Hettinger <python@rcn.com>
Wed, 1 Dec 2010 10:49:19 +0000 (10:49 +0000)
Doc/library/itertools.rst

index f612a1c4de196f56f30429bf018a4053fa711cba..bab168034e3bcd7a74e4eeb808ab4adf694b3c0a 100644 (file)
@@ -653,6 +653,14 @@ which incur interpreter overhead.
                pending -= 1
                nexts = cycle(islice(nexts, pending))
 
+   def accumulate(iterable):
+       'Emit a running total'
+       # accumulate([1,2,3,4,5]) --> 1 3 6 10 15
+       total = 0
+       for element in iterable:
+           total += element
+           yield total
+
    def partition(pred, iterable):
        'Use a predicate to partition entries into false entries and true entries'
        # partition(is_odd, range(10)) --> 0 2 4 6 8   and  1 3 5 7 9