什么是迭代器(iterator)
在 Python 中,可迭代对象就是你可以迭代的任何东西,而迭代器就是实际迭代的东西。
可以使用 iter 函数从任何可迭代对象中获取迭代器:
print(iter([1,2,3]))
print(iter((1,2,3)))
print(iter("zzxwrx"))
print(iter({"zzx":13,"wrx":23}))
一旦有了迭代器,可以用它做的唯一的事情就是获得它的下一个元素
a=iter([1,2,3])
b=next(a)
print(b)
b=next(a)
print(b)
如果没有更多的元素了, 则会抛出一个 stop iteration exception:
所有的迭代器都是可迭代对象,意思是你可以从一个迭代器中得到一个迭代器,因此你可以遍历一个迭代器:
list1=[1,2,3]
#列表
for i in list1:
print(i)
print(iter(list1))
#迭代器
for i in iter(list1):
print(i)
得到结果为: