Add a prepend() recipe to teach a chain() idiom (GH-6415)
This commit is contained in:
parent
c87eb09d2e
commit
9265dd72e5
|
@ -688,6 +688,11 @@ which incur interpreter overhead.
|
||||||
"Return first n items of the iterable as a list"
|
"Return first n items of the iterable as a list"
|
||||||
return list(islice(iterable, n))
|
return list(islice(iterable, n))
|
||||||
|
|
||||||
|
def prepend(value, iterator):
|
||||||
|
"Prepend a single value in front of an iterator"
|
||||||
|
# prepend(1, [2, 3, 4]) -> 1 2 3 4
|
||||||
|
return chain([value], iterator)
|
||||||
|
|
||||||
def tabulate(function, start=0):
|
def tabulate(function, start=0):
|
||||||
"Return function(0), function(1), ..."
|
"Return function(0), function(1), ..."
|
||||||
return map(function, count(start))
|
return map(function, count(start))
|
||||||
|
|
|
@ -2198,6 +2198,11 @@ Samuele
|
||||||
... "Return first n items of the iterable as a list"
|
... "Return first n items of the iterable as a list"
|
||||||
... return list(islice(iterable, n))
|
... return list(islice(iterable, n))
|
||||||
|
|
||||||
|
>>> def prepend(value, iterator):
|
||||||
|
... "Prepend a single value in front of an iterator"
|
||||||
|
... # prepend(1, [2, 3, 4]) -> 1 2 3 4
|
||||||
|
... return chain([value], iterator)
|
||||||
|
|
||||||
>>> def enumerate(iterable, start=0):
|
>>> def enumerate(iterable, start=0):
|
||||||
... return zip(count(start), iterable)
|
... return zip(count(start), iterable)
|
||||||
|
|
||||||
|
@ -2350,6 +2355,9 @@ perform as purported.
|
||||||
>>> take(10, count())
|
>>> take(10, count())
|
||||||
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
|
||||||
|
|
||||||
|
>>> list(prepend(1, [2, 3, 4]))
|
||||||
|
[1, 2, 3, 4]
|
||||||
|
|
||||||
>>> list(enumerate('abc'))
|
>>> list(enumerate('abc'))
|
||||||
[(0, 'a'), (1, 'b'), (2, 'c')]
|
[(0, 'a'), (1, 'b'), (2, 'c')]
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue