Revision 1892
Added by Aaron Marcuse-Kubitza almost 13 years ago
iters.py | ||
---|---|---|
2 | 2 |
|
3 | 3 |
def is_iterable(value): return getattr(value, '__iter__', False) |
4 | 4 |
|
5 |
# Sentinel to use in iter() if function return value should be ignored |
|
6 |
iter_end = object() |
|
7 |
|
|
8 |
def func_iter(func): |
|
9 |
'''Used to iterate a generating function which raises StopIteration instead |
|
10 |
of returning a sentinel value''' |
|
11 |
return iter(func, iter_end) |
|
12 |
|
|
13 |
def consume_iter(iter_): |
|
14 |
for elem in iter_: pass |
|
15 |
|
|
5 | 16 |
def flatten(outer_iter): |
6 | 17 |
for iter_ in outer_iter: |
7 | 18 |
for el in iter_: yield el |
Also available in: Unified diff
iters.py: Added func_iter() and consume_iter()