python中的iter()函式與next()函式
阿新 • • 發佈:2019-01-09
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()函數了。