对python中的iter()函数与next()函数详解

Python探路者 2018-10-18

list、tuple等都是可迭代对象,我们可以通过iter()函数获取这些可迭代对象的迭代器。然后我们可以对获取到的迭代器不断使⽤next()函数来获取下⼀条数据。iter()函数实际上就是调⽤了可迭代对象的 __iter__ ⽅法。

>>> li = [11, 22, 33, 44, 55]
>>> li_iter = iter(li)
>>> next(li_iter) 11
>>> next(li_iter) 22
>>> next(li_iter) 33
>>> next(li_iter) 44
>>> next(li_iter) 55
>>> next(li_iter)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
StopIteration
>>>

注意:当我们已经迭代完最后⼀个数据之后,再次调⽤next()函数会抛出 StopIteration的异常,来告诉我们所有数据都已迭代完成,不⽤再执⾏ next()函数了。

相关推荐