1.什么是迭代器?
根本上说,迭代器就是一个有next()方法的对象,当我们需要下一个项目时,调用迭代器的next()方法就可以获取它。条目全部取出后,会引发一个StopIteration异常,告诉外部使用者,迭代完成。
使用迭代器
#-*-coding:UTF-8-*- mytuple=(1,2,3,4,5,6) i=iter(mytuple) while True: try: j=i.next(); except StopIteration: break print j
为什么使用迭代器?
1.对列表和字典迭代可以提高性能
2.对非序列迭代时,可以创建更简洁的代码
注意:一个序列的迭代器,只是记录你当前到达第几个元素,所以如果迭代时改变了元素,更新会立即生效,可能会影响迭代结果。