迭代器

生成器都是迭代器,迭代器不一定是生成器。

list,tuple,dict,string:interable(可迭代对象)

l=[1,2,3,4]
a=iter(l)
print(a)#<list_iterator object at 0x0000000000BD8B38>
print(next(a))#1
#迭代器是什么?
#满足两个条件:1.有iter方法 2.有next方法
for i in l:
print(i,'',end='')#1 2 3 4
#for语句内部做的三件事:
#1.调用可迭代对象的iter方法,返回一个迭代器对象
#2.不断调用迭代器对象的next方法
#3.处理StopIteration异常

(生成器generator  迭代器iterator  可迭代对象iterable  容器container)
go go go! ! !
原文地址:https://www.cnblogs.com/zbooo/p/9023625.html