From 0907a45eb16724e0d4f0e742190dbcf7687b047f Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Wed, 13 May 2015 02:34:38 -0700 Subject: Issue #23695: Explain the zip() example for clustering a data series into n-length groups. --- Doc/library/functions.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Doc/library/functions.rst') diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index e982ceb0b9..1321c7a4ca 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -1492,7 +1492,9 @@ are always available. They are listed here in alphabetical order. The left-to-right evaluation order of the iterables is guaranteed. This makes possible an idiom for clustering a data series into n-length groups - using ``zip(*[iter(s)]*n)``. + using ``zip(*[iter(s)]*n)``. This repeats the *same* iterator ``n`` times + so that each output tuple has the result of ``n`` calls to the iterator. + This has the effect of dividing the input into n-length chunks. :func:`zip` should only be used with unequal length inputs when you don't care about trailing, unmatched values from the longer iterables. If those -- cgit v1.2.1