私はPythonで2つのイテレータを持っており、どちらも同じ「ランダム」分布(どちらもパラレルで実行する必要があります)に従ってください。例えば:並列ランダム分布
class Iter1(object):
def __iter__(self):
for i in random_generator():
yield i
class Iter2(object):
def __iter__(self):
for i in random_generator():
yield i
for el1, el2 in zip(Iter1(), Iter2()):
print '{} {}'.format(el1, el2)
出力はsomethigのようにする必要があります:
0.53534 0.53534
0.12312 0.12312
0.19238 0.19238
は、どのように私はそれが両方のイテレータのための並列で同じランダム分布を作成する方法でrandom_generator()
を定義することができます。
注:
- 彼らは私が事前にシーケンスを生成することはできません
- 並列に実行する必要があります(それがストリーミングであるので、私はシーケンスのサイズがわからない)
ありがとうございました。
だけ変数に1つの歩留まりを割り当て、あなたが同じ繰り返しの2つのコピーが必要な場合は二回 – iScrE4m
その変数を使用し、 ' – jonrsharpe
はなぜ1を生成し、他にそれをコピーしないitertools.tee'でしょうか? – Jeon