我有两个python迭代器,两者应该遵循相同的“随机”分布(两者应该并行运行)。例如:并行随机分配
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()
,它创造了两个迭代器相同的随机分布并行。
注:
- 他们应该在平行
- 跑,我不能预先生成(它是一个流,所以我不知道该序列的大小)的序列
谢谢。
只是分配一个收益率的变量,并使用该变量两次 – iScrE4m
如果您需要在同一个迭代的两个副本,使用'itertools.tee' – jonrsharpe
为什么不产生一个并将其复制到另一个? – Jeon