一、迭代器
什么是迭代
迭代是可以通过遍历的方式依次把某个对象中的元素取出的方法,在python中,迭代是通过使用for....in....语句完成的可迭代对象
可以被直接作用于for语句的对象都可以被称为可迭代对象(iterable)。而可以直接作用于for语句的数据类型有以下两种:
-
集合数据类型:str,list,tuple,dict,set.....
-
生成器(generator),包括生成器和带yield的生成器函数
迭代器(iterator)
在python中,可以被next函数调用并不断返回下一个值的对象被称为迭代器(iterator),我们也可以通过isinstance函数对其进行判断
from collections import Iterator
print(isinstance("123", Iterator)) # str类型,输出:False
print(isinstance([1, 2, 3], Iterator)) # list类型,输出:False
print(isinstance((1, 2, 3), Iterator)) # tuple类型,输出:False
print(isinstance({"a": 1, "b": 2, "c": 3}, Iterator)) # dict类型,输出:False
print(isinstance({1, 2, 3}, Iterator)) # set类型,输出:False
从上面可以看出,可迭代对象可以不是迭代器,如果我们想把他们转换为迭代器,可