summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2010-12-03 02:33:53 (GMT)
committerRaymond Hettinger <python@rcn.com>2010-12-03 02:33:53 (GMT)
commit2d93e6ee637f3ec62114919835a32ed009b99a0b (patch)
tree06b053acac52d4fdc34fee5b33167f259eae3888
parent240f112448fa26114c261cb290706226fb09152b (diff)
downloadcpython-2d93e6ee637f3ec62114919835a32ed009b99a0b.zip
cpython-2d93e6ee637f3ec62114919835a32ed009b99a0b.tar.gz
cpython-2d93e6ee637f3ec62114919835a32ed009b99a0b.tar.bz2
Update the itertools.accumulate() docs.
-rw-r--r--Doc/library/itertools.rst9
-rw-r--r--Lib/test/test_itertools.py1
2 files changed, 5 insertions, 5 deletions
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index befc6be..3c9f334 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -46,7 +46,7 @@ Iterator Arguments Results
==================== ============================ ================================================= =============================================================
Iterator Arguments Results Example
==================== ============================ ================================================= =============================================================
-:func:`accumulate` p[, start=0] p0, p0+p1, p0+p1+p2, ... ``accumulate([1,2,3,4,5]) --> 1 3 6 10 15``
+:func:`accumulate` p p0, p0+p1, p0+p1+p2, ... ``accumulate([1,2,3,4,5]) --> 1 3 6 10 15``
:func:`chain` p, q, ... p0, p1, ... plast, q0, q1, ... ``chain('ABC', 'DEF') --> A B C D E F``
:func:`compress` data, selectors (d[0] if s[0]), (d[1] if s[1]), ... ``compress('ABCDEF', [1,0,1,0,1,1]) --> A C E F``
:func:`dropwhile` pred, seq seq[n], seq[n+1], starting when pred fails ``dropwhile(lambda x: x<5, [1,4,6,4,1]) --> 6 4 1``
@@ -84,11 +84,10 @@ The following module functions all construct and return iterators. Some provide
streams of infinite length, so they should only be accessed by functions or
loops that truncate the stream.
-.. function:: accumulate(iterable, start=0)
+.. function:: accumulate(iterable)
- Make an iterator that returns accumulated sums plus the value of the *start*
- parameter (which defaults to :const:`0`). Elements may be any addable type
- including :class:`Decimal` or :class:`Fraction`. Equivalent to::
+ Make an iterator that returns accumulated sums. Elements may be any addable
+ type including :class:`Decimal` or :class:`Fraction`. Equivalent to::
def accumulate(iterable):
'Return running totals'
diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py
index b8f6eec..b744636 100644
--- a/Lib/test/test_itertools.py
+++ b/Lib/test/test_itertools.py
@@ -66,6 +66,7 @@ class TestBasicOps(unittest.TestCase):
self.assertEqual(
list(accumulate(map(typ, range(10)))),
list(map(typ, [0, 1, 3, 6, 10, 15, 21, 28, 36, 45])))
+ self.assertEqual(list(accumulate('abc')), ['a', 'ab', 'abc']) # works with non-numeric
self.assertEqual(list(accumulate([])), []) # empty iterable
self.assertEqual(list(accumulate([7])), [7]) # iterable of length one
self.assertRaises(TypeError, accumulate, range(10), 5) # too many args