У меня есть ленивая цепочка генераторов. Я хотел бы связать генератор с их выходными данными, но только с подмножеством «диапазона» выходных данных. В частности, я хотел бы пропустить некоторые строки:
Код: Выделить всё
def foo():
yield "pickles"
yield from iter(range(4))
def bar(foo_numbers):
yield from (5*num for num in foo_numbers)
# how to construct foo_bar from `foo` and `bar`?
assert foo_bar == ['pickles', 0, 5, 10, 15]
Обратите внимание, что выходные данные foo_bar могут быть получены из foo, за которым следует bar, за исключением того, что bar должен применяться только к первому- n-й элемент вывода foo (пропуская нулевой элемент). Есть ли простой способ заставить мои генераторы пропускать n элементов?
Подробнее здесь:
https://stackoverflow.com/questions/793 ... r-chaining