一:迭代器
1)可迭代对象
具有内置函数__iter__的数据就是可迭代对象
2)迭代器对象
具有内置函数__next__的数据就是迭代器对象
迭代器对象一定是可迭代对象,可迭代对象不一定是迭代器对象
3)迭代器
器:存放多个值的容器
迭代:循环一次通过__next__取一个容器中的值外界
二:生成器
1)什么是生成器
生成器就是含有yield关键字的函数,生成器一定是迭代器对象
2)简单的生成器
def my_range(min,max,step=1): z=False if min > max and step<0: z=True min, max = max, min count=max else: count=min while True: if max >= min and step < 0 and not z: break if count >= max and not z: break if z and count <=min: break yield count count += step for i in my_range(5,1,-1): print(i)