summaryrefslogtreecommitdiffstats
path: root/Doc/library/itertools.rst
diff options
context:
space:
mode:
authorRaymond Hettinger <python@rcn.com>2009-03-23 22:42:28 (GMT)
committerRaymond Hettinger <python@rcn.com>2009-03-23 22:42:28 (GMT)
commitfd88ea7db2db5f3c452b7d2ee452f6821408123b (patch)
treee2ce4fc693153ebe8329061ab901befdaae155ed /Doc/library/itertools.rst
parent5254c04aeb6b14e280e52b82937183714da1a541 (diff)
downloadcpython-fd88ea7db2db5f3c452b7d2ee452f6821408123b.zip
cpython-fd88ea7db2db5f3c452b7d2ee452f6821408123b.tar.gz
cpython-fd88ea7db2db5f3c452b7d2ee452f6821408123b.tar.bz2
For some reason rst docs like an initial 3 space indent.
Diffstat (limited to 'Doc/library/itertools.rst')
-rw-r--r--Doc/library/itertools.rst46
1 files changed, 23 insertions, 23 deletions
diff --git a/Doc/library/itertools.rst b/Doc/library/itertools.rst
index 6a4a2a5..dca2315 100644
--- a/Doc/library/itertools.rst
+++ b/Doc/library/itertools.rst
@@ -683,26 +683,26 @@ which incur interpreter overhead.
s = list(iterable)
return chain.from_iterable(combinations(s, r) for r in range(len(s)+1))
- def unique_everseen(iterable, key=None):
- "List unique elements, preserving order. Remember all elements ever seen."
- # unique_everseen('AAAABBBCCDAABBB') --> A B C D
- # unique_everseen('ABBCcAD', str.lower) --> A B C D
- seen = set()
- seen_add = seen.add
- if key is None:
- for element in iterable:
- if element not in seen:
- seen_add(element)
- yield element
- else:
- for element in iterable:
- k = key(element)
- if k not in seen:
- seen_add(k)
- yield element
-
- def unique_justseen(iterable, key=None):
- "List unique elements, preserving order. Remember only the element just seen."
- # unique_justseen('AAAABBBCCDAABBB') --> A B C D A B
- # unique_justseen('ABBCcAD', str.lower) --> A B C A D
- return map(next, map(itemgetter(1), groupby(iterable, key)))
+ def unique_everseen(iterable, key=None):
+ "List unique elements, preserving order. Remember all elements ever seen."
+ # unique_everseen('AAAABBBCCDAABBB') --> A B C D
+ # unique_everseen('ABBCcAD', str.lower) --> A B C D
+ seen = set()
+ seen_add = seen.add
+ if key is None:
+ for element in iterable:
+ if element not in seen:
+ seen_add(element)
+ yield element
+ else:
+ for element in iterable:
+ k = key(element)
+ if k not in seen:
+ seen_add(k)
+ yield element
+
+ def unique_justseen(iterable, key=None):
+ "List unique elements, preserving order. Remember only the element just seen."
+ # unique_justseen('AAAABBBCCDAABBB') --> A B C D A B
+ # unique_justseen('ABBCcAD', str.lower) --> A B C A D
+ return map(next, map(itemgetter(1), groupby(iterable, key)))