迭代器
from collections.abc import Iterator, Iterable # 生成器是一个迭代器,迭代器不一定是生成器 # 迭代器满足两个条件:1、有iter方法,2、可以被next方法调用 l = [1, 2, 3, 5] d = iter(l) print(d) print(next(d)) print(next(d)) # for循环做的事: # 1、调用可迭代对象的iter方法返回一个可迭代对象 # 2、不断调用可迭代对象的next方法 # 3、处理StopIteration 报错,结束循环 for i in d: print(i) print(isinstance(l, list)) print(isinstance(d, Iterator)) # 是否是迭代器 print(isinstance(l, Iterable)) # 是否是可迭代对象