У меня есть список lg
генераторов, lg = [g1, g2, ..., gn]
. Эти генераторы объединяются в один генератор с izip
, G = izip(*lg)
. Один из генераторов в lg
(скажем, g1
) обычно построен сам по izip
, поэтому его сгенерированный результат появляется как кортеж при итерации по G
. Тем не менее, мне нужен пакет, который распакован, т. Е. При итерации более G
, G
должен генерировать кортеж без вложенных кортежей. Возможно ли до unpack g1, когда СтроительствоG
?izip внутри izip: распаковывать генераторы?
Edit: Пример (версия shortend от @jsbueno):
from itertools import izip
g1 = izip(xrange(1,3), xrange(3,5))
g2 = xrange(10, 13)
g3 = xrange(20, 23)
lg = [g1, g2, g3]
for i in izip(*lg):
print i
производит
((1, 3), 10, 20)
((2, 4), 11, 21)
, но мне нужно
(1, 3, 10, 20)
(2, 4, 11, 21)