迭代器概念

#迭代器
#我们已经知道,可以直接作用于for 循环的数据类型:
#list,tuple,dict,set,str等;
#generator,包括生成器和yield的generator function。
#这些可以直接作用于for循环的对象统称为可迭代(Iterable)对象(可循环的对象),Iterable。
#可以使用isinstance来判断是都是可迭代对象
#***可以被next()函数调用并不断返回值的对象称为迭代器:Iterator
#可以使用isinstance来判断是都是Iterable对象
#from collections import Iterable
#print(isinstance(100,Iterable))
#a=[1,2,3]
#print(dir(a)) #输出a所有的可调用方式
from collections import Iterator
#print(isinstance(( x for x in range(5)),Iterator))

#可迭代对象变成迭代器
a=[1,2,3]
iter(a)
b=iter(a)
print(b.next())
print(isinstance(iter(a),Iterator))

#总结:
#1、 凡是可作用与for循环的对象就是可迭代对象(Iterable类型)
#2、凡是可作用next()函数的对象都是迭代器对象(Iterator类型)

猜你喜欢

转载自blog.51cto.com/12992048/2176363