python自动化--迭代器
1 什么叫迭代器:
迭代是一个重复的过程,每次重复都是基于上一次的结果来的
2 为什么要用迭代器?
-对于序列类型:字符串,列表,元组,可以使用基于索引的迭代取值方式,而对于没有索引的类型 如 字典,集合,文件,这种方式不再适合,于是我们必须找出一种能不依赖于索引的取值方式,这就是迭代器
3 可迭代对象:只要对象内置有__iter__方法, obj.__iter__
4 迭代对象:对象既内置有__iter__方法,有内置有__next__,如文件对象
下面的案例就是基于迭代器对象的迭代取值(不依赖索引)
for循环也有此功能。
迭代器的优缺点:
优点:提供了一种统一的迭代取值方法,该方法不再依赖于索引
更加节省内存
缺点:无法统计长度
一次性的,只能往后走,不能往前返,无法获取指定位置的值