python中的迭代器

2021-09-17 04:26:48 字數 405 閱讀 1362

python中的迭代器,正如python一樣簡單,任何物件只要擁有

__iter__
屬性即可,該屬性是乙個方法,且該方法返回乙個擁有

__next__
方法物件即可。

任何物件必須滿足上面所述兩個原則才能成為迭代器。

舉個例子:python中的生成器就實現了__iter__方法,同時它也實現了__next__方法,從這裡我們可以推測,生成器的__iter__方法返回的就是自身,因為自身也實現了__next__方法,但是對於列表可就不一樣了,你會發現,list物件並沒有實現__next__方法,但是list實現了__iter__方法,事實上list的__iter__方法返回的物件實現了__next__方法,所以你可以使用for迴圈來遍歷它。

python中迭代器 python中的迭代器

如果給定乙個list或tuple,我們可以通過for迴圈來遍歷這個list或tuple,這種遍歷我們稱為迭代 iteration d for key in d print key ac b當我們使用for迴圈時,只要作用於乙個可迭代物件,for迴圈就可以正常執行,而我們不太關心該物件究竟是list還...

Python中的迭代器

可以直接作用於for迴圈的資料型別有以下幾種 一類是集合資料型別,如list tuple dict set str等 一類是generator,包括生成器和帶yield的生成器函式。這些可以直接作用於for迴圈的物件統稱為可迭代物件 iterable python的for迴圈本質上就是通過不斷呼叫n...

python中的迭代器

什麼是迭代器?迭代器是帶有next方法的簡單物件,當然也要實現 iter 函式。迭代器能在一串行的值上進行迭代,當沒有可供迭代時,next方法就會引發stopiteration 的異常。python中有很多的物件都是迭代器,例如 列表,元素,字串,檔案,對映,集合 如何使用迭代器?1.for 變數 ...