From: Raymond Hettinger Date: Mon, 20 Sep 2021 00:52:27 +0000 (-0500) Subject: Docs: Clarify the before_and_after() example (GH-28458) X-Git-Tag: v3.11.0a1~116 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fcbf9b176b1190301c760a921601c6488ef8b070;p=thirdparty%2FPython%2Fcpython.git Docs: Clarify the before_and_after() example (GH-28458) --- diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index ac6b354138b6..61d8b869711f 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -859,10 +859,11 @@ which incur interpreter overhead. """ Variant of takewhile() that allows complete access to the remainder of the iterator. - >>> all_upper, remainder = before_and_after(str.isupper, 'ABCdEfGhI') - >>> str.join('', all_upper) + >>> it = iter('ABCdEfGhI') + >>> all_upper, remainder = before_and_after(str.isupper, it) + >>> ''.join(all_upper) 'ABC' - >>> str.join('', remainder) + >>> ''.join(remainder) # takewhile() would lose the 'd' 'dEfGhI' Note that the first iterator must be fully diff --git a/Lib/test/test_itertools.py b/Lib/test/test_itertools.py index db6a98351bbd..4e1dd0255086 100644 --- a/Lib/test/test_itertools.py +++ b/Lib/test/test_itertools.py @@ -2646,10 +2646,11 @@ True >>> list(odds) [1, 3, 5, 7, 9] ->>> all_upper, remainder = before_and_after(str.isupper, 'ABCdEfGhI') ->>> str.join('', all_upper) +>>> it = iter('ABCdEfGhI') +>>> all_upper, remainder = before_and_after(str.isupper, it) +>>> ''.join(all_upper) 'ABC' ->>> str.join('', remainder) +>>> ''.join(remainder) 'dEfGhI' >>> list(powerset([1,2,3]))