迭代器
可以直接作用于for循环的数据类型有以下几种:
一类是集合数据类型,如list、tuple、dict、set、str等
一类是genrator,包括生成器和带yield的generator function
这些可以直接用作与for循环的对象统称为可迭代对象:Iterable。
isinstance()判断一个对象是否是Iterable对象
可以被next()函数调用并不断返回下一个值的对象称为迭代器:Iterator
生成器都是Iterator对象,但list、dict、str虽然都是Iterable,却不是Iterator。
把list、dict、str 等Iterable变成Iterator可以使用iteration()函数