Python中的迭代器与可迭代:iter()和next()

Python012

Python中的迭代器与可迭代:iter()和next(),第1张

一种自动迭代的更优雅的实现是使用 for循环

在Python中,迭代器(Iterator)和可迭代(iterable)的区别是,迭代器支持 iter ()和 next ()方法;可迭代支持 iter ()方法。可迭代只能在for循环中获得元素,迭代器还可以用next()方法获取元素。

list/truple/map/dict都是可迭代,但不是迭代器;这些数据的大小是确定的;迭代器不是,迭代器不知道要执行多少次,所以可以理解为不知道有多少个元素,每调用一次next(),就会往下走一步。

凡是可以for循环的,都是Iterable

凡是可以next()的,都是Iterator

是,Python 包含的保留字可以执行如下命令进行查看: →import keyword →... next()(在for 循环中会自动调用 。