迭代器,生成器
1)创建生成器方式: 1、(x for x in range(10)) 2、def f(): yield 2 print('ok') 2)生成器的方法: 1、next(f()) 生成器在创建的时候已经决定了能计算出值的个数, 调用next的次数超过该次数,就会出现StopIteration 2、send() f().send(None)<======>next(f()) 3)for 循环内部做的三件事 1、调用iter方法,返回一个生成器对象 2、i=next(list_Iterator) 3、异常处理 4)迭代器 满足迭代器协议: 1、内部有next方法 2、内部有iter方法