另一个选择是使用该
itertools.tee()函数来创建生成器的第二版本:
y = FunctionWithYield()y, y_backup = tee(y)for x in y: print(x)for x in y_backup: print(x)
如果原始迭代可能未处理所有项目,则从内存使用的角度来看这可能是有益的。

另一个选择是使用该
itertools.tee()函数来创建生成器的第二版本:
y = FunctionWithYield()y, y_backup = tee(y)for x in y: print(x)for x in y_backup: print(x)
如果原始迭代可能未处理所有项目,则从内存使用的角度来看这可能是有益的。