python中的迭代器

2021-09-07 06:24:12 字數 740 閱讀 2591

什麼是迭代器?

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

如何使用迭代器?

1. for 變數 in 可迭代物件

例如:

list1 = [1,2,3,4,5]

for ele in list1:

print ele,

結果為:1 2 3 4 5

2. if 變數 in 可迭代物件

例如:

list1 = [1,2,3,4,5]

var = 1

if var in list1:

print 'yes!'

else:

print 'no'

3. 變數 = iter(可迭代物件)

例如:

it = iter([1,2,3,4])

print it.next()

print it.next()

print it.next()

結果為:12

3最後,總結一下:迭代器就是一物件

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中的迭代器

python中的迭代器,正如python一樣簡單,任何物件只要擁有 iter 屬性即可,該屬性是乙個方法,且該方法返回乙個擁有 next 方法物件即可。任何物件必須滿足上面所述兩個原則才能成為迭代器。舉個例子 python中的生成器就實現了 iter 方法,同時它也實現了 next 方法,從這裡我們...