生成器, 迭代器, 可迭代對象的關係

可迭代對象

能使用 for 循環

for i in obj:
    xxxx

的都是可迭代對象

 

生成器

生成器不但可以作用於for循環,還可以通過next()函數不斷返回下一個值

生成器有兩種形生成器不但可以作用於for循環,還可以通過next()函數不斷返回下一個值式, 一種是將列表生成式的兩側的方括號換成圓括號; 第二種就是在函數中增加yield關鍵字

迭代器

生成器都是迭代器

調用一個生成器函數,返回的是一個迭代器對象。

list、tuple、dict等對象雖然是可迭代的(Iterable),但卻並不是迭代器(Iterator)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章