我Python你個可迭代物件 迭代器 生成器

2021-10-06 21:27:13 字數 355 閱讀 2666

可迭代物件

可迭代物件是內建__iter__()魔術方法的物件,是可以使用for迴圈來遍歷的物件,例如列表、元組、字典和字串。

迭代器

迭代器是一種特殊的可迭代物件,內建__iter__()魔術方法和__next__()魔術方法,可以通過for迴圈一次取出所有值,也可以通過next()函式依次取出每乙個值。

生成器

生成器是一種特殊的迭代器,也內建__iter__()魔術方法和__next__()魔術方法,也可以通過for迴圈next()函式取值,只是每次呼叫next()函式來取值,都需通過關鍵字yield來返回值。

Python高階專題 可迭代物件協議以及迭代器

1.迭代協議與可迭代物件 只有實現了迭代協議 iter 才可以稱為可迭代物件 2.迭代器 訪問集合內元素的方式,用於遍歷資料,但是無法返回,提供了惰性訪問資料,同時實現了 iter 以及 next 協議 from collections.abc import iterable,iterator it...

python迭代和如何判斷乙個物件是可迭代物件

可以理解為,任意的集合使用for迴圈遍歷 python中,迭代永遠是取出元素本身,而非元素的索引。對於有序集合,有時候會需要取出元素的索引,可以使用python內建的enumerate函式。enumerate函式可以把乙個list變成索引 元素對,這樣就可以在for迴圈中同時迭代索引和元素本身。li...

Python 可迭代物件

1.可迭代物件 以直接作用於for迴圈的資料型別有以下幾種 一類是集合資料型別 如 list tuple dict set str等 一類是generator,包括生成器和帶yield 的 generator function 這些可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 2...