From 0a74d33e14538849216271c3610ea4e301f7370f Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Sun, 19 Sep 2021 18:53:37 -0700 Subject: [PATCH] Docs: Clarify the before_and_after() example (GH-28458) (#28464) (cherry picked from commit fcbf9b176b1190301c760a921601c6488ef8b070) Co-authored-by: Raymond Hettinger Co-authored-by: Raymond Hettinger --- Doc/library/itertools.rst | 7 ++++--- Lib/test/test_itertools.py | 7 ++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index bf60a0cee795f4..8341ce321b1b20 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 6f8f87684e29cf..3f4fb4cf071889 100644 --- a/Lib/test/test_itertools.py +++ b/Lib/test/test_itertools.py @@ -2604,10 +2604,11 @@ def test_permutations_sizeof(self): >>> 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]))