From dfe098d2150b4dc2842a15c6c30438effb40c0b7 Mon Sep 17 00:00:00 2001 From: Raymond Hettinger Date: Sun, 25 May 2014 22:03:56 -0700 Subject: [PATCH] Issue 16774: Add a new itertools recipe (suggested by Alexey Kachayev). --- Doc/library/itertools.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst index 1f0bcedc0a..c5ba2eb596 100644 --- a/Doc/library/itertools.rst +++ b/Doc/library/itertools.rst @@ -662,6 +662,11 @@ which incur interpreter overhead. "Return function(0), function(1), ..." return map(function, count(start)) + def tail(n, iterable): + "Return an iterator over the last n items" + # tail(3, 'ABCDEFG') --> E F G + return iter(collections.deque(iterable, maxlen=n)) + def consume(iterator, n): "Advance the iterator n-steps ahead. If n is none, consume entirely." # Use functions that consume iterators at C speed. -- 2.50.1