我如何可以連接兩個項目從Python中的函數產生什麼時候?串連而產生
基本情況:
import itertools
def test():
for number in range(0,10):
yield number
list(test()) # [0...9]
如果我要得到這兩個number
及其平方number**2
import itertools
def test():
for number in range(0,10):
yield itertools.chain.from_iterable([
number,number*2
])
list(test())
# [0,0,1,1,2,4,3,9,...] pretended
# <itertools.chain at 0x135decfd0> ... what I got
但是這樣做從外面itertools.chain.from_iterable([generator1, generator2])
給出了預期的結果。
def first_list():
for number in range(0,5):
yield number
def second_list():
for number in range(5,10):
yield number
list(itertools.chain.from_iterable([first_list(), second_list()]))
爲什麼不乾脆:'產量號產量號** 2'? –
vaultah
你不想連接,你想要雙倍收益......這是一個區別。 – Paebbels
從外面就出來級聯 –