Commit d15879d6 authored by Raymond Hettinger's avatar Raymond Hettinger

Improve three recipes in the itertools docs.

parent b3b65711
......@@ -458,15 +458,21 @@ def nth(iterable, n):
def all(seq, pred=bool):
"Returns True if pred(x) is True for every element in the iterable"
return False not in imap(pred, seq)
for elem in ifilterfalse(pred, seq):
return False
return True
def any(seq, pred=bool):
"Returns True if pred(x) is True at least one element in the iterable"
return True in imap(pred, seq)
"Returns True if pred(x) is True for at least one element in the iterable"
for elem in ifilter(pred, seq):
return True
return False
def no(seq, pred=bool):
"Returns True if pred(x) is False for every element in the iterable"
return True not in imap(pred, seq)
for elem in ifilter(pred, seq):
return False
return True
def quantify(seq, pred=bool):
"Count how many times the predicate is True in the sequence"
......
......@@ -746,15 +746,21 @@ Samuele
>>> def all(seq, pred=bool):
... "Returns True if pred(x) is True for every element in the iterable"
... return False not in imap(pred, seq)
... for elem in ifilterfalse(pred, seq):
... return False
... return True
>>> def any(seq, pred=bool):
... "Returns True if pred(x) is True for at least one element in the iterable"
... return True in imap(pred, seq)
... for elem in ifilter(pred, seq):
... return True
... return False
>>> def no(seq, pred=bool):
... "Returns True if pred(x) is False for every element in the iterable"
... return True not in imap(pred, seq)
... for elem in ifilter(pred, seq):
... return False
... return True
>>> def quantify(seq, pred=bool):
... "Count how many times the predicate is True in the sequence"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment