Python知识点进阶——迭代器

可迭代对象

可迭代对象可以简单的理解为用for循环遍历的,如list、tuple、dict、set、str

判断一个对象是否是迭代器:


可以将数据类型 和 是否为可迭代对象 比较来判断是否是可以迭代

发现整型是不能迭代的。


迭代器一定是可迭代对象,拥有next()方法

next()方法可以获取迭代器的下一个元素


对list使用next()方法,发现抛出异常,提示list不是一个迭代器

所以可迭代对象不一定是迭代器!


可以通过导入Iterator模块,使iter()方法将list转换成一个迭代器。

然后就可以通过next()方法获取迭代器的下一个对象。


当获取完后再次获取下一个会抛出异常!另外迭代器只能往后next(),不能回退。

迭代器不要求事先准备好整个迭代过程中的元素,迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁,这个特点使得它特别适合用于遍历一些巨大的或是无限的集合,比如几个G的文件。

原文地址:https://www.cnblogs.com/Mayny/p/9374171.html