From 21315ba9c819fe0de35b9b73fdef502cf186fd14 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Mon, 23 Feb 2009 19:38:09 +0000 Subject: [PATCH] Update itertools recipes to use next(). --- Doc/library/itertools.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index 32ad792fb27..6e6b6d99b28 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -326,14 +326,14 @@ loops that truncate the stream. return self def __next__(self): while self.currkey == self.tgtkey: - self.currvalue = next(self.it) # Exit on StopIteration + self.currvalue = next(self.it) # Exit on StopIteration self.currkey = self.keyfunc(self.currvalue) self.tgtkey = self.currkey return (self.currkey, self._grouper(self.tgtkey)) def _grouper(self, tgtkey): while self.currkey == tgtkey: yield self.currvalue - self.currvalue = next(self.it) # Exit on StopIteration + self.currvalue = next(self.it) # Exit on StopIteration self.currkey = self.keyfunc(self.currvalue) @@ -652,8 +652,7 @@ which incur interpreter overhead. def pairwise(iterable): "s -> (s0,s1), (s1,s2), (s2, s3), ..." a, b = tee(iterable) - for elem in b: - break + next(b, None) return zip(a, b) def grouper(n, iterable, fillvalue=None):