快速學習Python之迭代器和生成器

2021-10-05 07:56:32 字數 348 閱讀 6647

我們知道listtupledictset

str可以用for迴圈遍歷,這種遍歷稱為迭代(iteration),被遍歷的list或tuple等被稱為可迭代物件。

迭代器是乙個具有迭代功能的物件,它從集合的第乙個元素開始訪問,直到所有的元素被遍歷完,它有兩個基本的方法iter()和next()。其中iter()用來建立迭代器物件,next()用於遍歷物件的元素。

迭代器提供了一種不依賴索引取值的方式,適用於遍歷元素比較多的集合,不會在記憶體中再占用一大塊記憶體,而是隨著迴圈每次生成乙個,從而節省記憶體占用。

python學習之迭代器

在介紹迭代器時候,首選介紹兩個概念,from collections.abc import iterable from collections.abc import iterator print isinstance iterable print isinstance iterable print ...

python學習之迭代器

4.5.1 可迭代物件 字面意思分析 可以重複的迭代的實實在在的東西。list,dict keys values items tuple,str,set,range,檔案控制代碼 待定 專業角度 內部含有 iter 方法的物件,就是可迭代物件。內建函式 dir print dir str 判斷乙個物...

Python學習筆記 迭代器和迭代器協議

術語概念解釋 關於 for 迴圈 寫乙個迭代器 1 迭代器協議 迭代器協議是一種約定,即物件必須提供乙個 next 方法,執行該方法要麼返回迭代中的下一項,要麼丟擲乙個 stopiteration 異常,終止迭代。2 迭代器 iterator 迭代器是一種物件,一種可以被 next 函式呼叫並不斷返...