迭代list_iterator两次

时间:2014-01-22 13:05:35

标签: python python-3.x

我希望两次迭代list_iterator。当我目前尝试这样做时,迭代器没有任何东西可以在第二次迭代。我可以重置吗?

l = iter(["1","2","3","4"])

for i in l:
   print(i)

for i in l:
   print(i)

一个list_iter对象正被传递给我希望迭代两次的函数。传递list_iterator对象是不是很糟糕?

1 个答案:

答案 0 :(得分:2)

您始终可以使用itertools.tee获取可迭代的copies

阿拉

l = iter(["1","2","3","4"])
# Don't use original....
original, new = tee(l)