iter()用于创建迭代器,next()用于输出迭代器的下一个元素:
names = [\'微湘菜\', \'小湘菜\', \'大湘菜\', \'巨湘菜\'] iterName = iter(names) for i in range(4): print(next(iterName))
结果为:
微湘菜
小湘菜
大湘菜
巨湘菜
创建一个迭代器需要在类中实现两个方法 __iter__() 与 __next__() ,这在python面向对象会详细解释
使用了yield的函数即生成器(generator),返回一个迭代器。每次遇到yield时会暂停运行,在下次执行是会从当前暂停位置继续运行:
def generator(): print(\'s\') while True: print(\'微湘菜\') yield \'小湘菜\' print(\'大湘菜\') g = generator() print(next(g)) print(next(g))
结果为:
s
微湘菜
小湘菜
大湘菜
微湘菜
小湘菜
一般在迭代器中都要存在循环,否则难以迭代
来源:https://www.cnblogs.com/daxiangcai/p/16154668.html
本站部分图文来源于网络,如有侵权请联系删除。