Python學習 迭代器

2021-09-10 10:49:17 字數 1254 閱讀 8659

含義迭代的意思類似於迴圈,每一次重複的過程被稱為一次迭代的過程,而每一次迭代得到的結果會被用來作為下一次迭代的初始值

提供迭代方法的容器稱為迭代器,常用的迭代器:列表、元組、字串、字典。

示例 1(字串)

字串就是乙個容器,同時也是乙個迭代器,for 語句的作用就是觸發這個迭代器的迭代功能,每次從容器裡依次拿出乙個資料,這就是迭代操作

示例 2(字典)

兩個bif:iter()和next()

對乙個容器呼叫 iter() 就得到它的迭代器,呼叫 next() 迭代器就會返回下乙個值,如果迭代器沒有值可以返回,就會丟擲乙個stopiteration的異常

兩個魔法方法:__iter__()__next__()

如果乙個容器是迭代器,那就必須實現__iter__()魔法方法,這個方法實際上就是返回迭代器本身

class

fibs

:def

__init__

(self,n=20)

: self.a =

0 self.b =

1 self.n = n

def__iter__

(self)

:return self

def__next__

(self)

: self.a, self.b = self.b, self.a + self.b

# 新增引數n,新增引數控制迭代的範圍

python 迭代器 python迭代器

迭代器 可以直接作用for迴圈的資料型別 我們已經知道,可以直接作用for迴圈的資料型別有以下幾種 一類是集合資料型別 如 list tuple dict set str等 一類是generator,包括生成器和帶yield的generator function 可迭代物件定義 這些可以直接作用fo...

python學習 Python的迭代器

1 什麼是迭代器 迭代器就是提供 next 方法的物件 2 如何使用迭代器 for v in it python 的 for 語句可對迭代器進行處理,它自動呼叫迭代器的 next 方法進行遍歷,並在遇到 stopiteration 異常後終止迴圈 3 有哪些迭代器?list,dict,檔案物件,都屬...

Python學習筆記 迭代器

from collections import iterable from collections import iterator 可迭代物件 可以直接作用於for迴圈的物件統稱為可迭代物件 iterable 可以用isinstance 去判斷乙個物件是否是iterable物件 可以直接作用於for...