Python基礎之迭代器

2021-08-25 05:56:40 字數 973 閱讀 8973

一喪:別害怕,反正都會後悔的

認識迭代器一定要認識乙個單詞yield。

yield是什麼意思?在筆者認為它就是乙個暫停並輸出的意思,當再次呼叫時從暫停處繼續執行**到達下乙個暫停並輸出。

我們來看乙個簡單的**吧。

def

shuchu

(num):

for n in range(num):

yield n

f = shuchu(5)

print(next(f))

print(next(f))

print(next(f))

print(next(f))

print(next(f))

print(next(f))

它的輸出為:

但是如果我們超出範圍會怎麼樣呢?

它會給我們報如下錯誤:

大家思考一下,每次都使用next()是不是太麻煩了,一點也不優雅。可是不用next我們用什麼呢?誒,沒錯,我們用迴圈去遍歷它呀。

def

shuchu

(num):

for n in range(num):

yield n

f = shuchu(5)

for n in f:

print(n)

它的輸出如下:

好的,以上就是迭代器的基本使用用法。

Python基礎之迭代器詳解

迭代器即用來迭代取值的工具,而迭代是重複反饋過程的活動,其目的通常是為了逼近所需的目標或結果,每一次對過程的重複稱為一次 迭代 而每一次迭代得到的結果會作為下一次迭代的初始值,單純的重複並不是迭代。例項 goods mac lenovo acer dell sony index 0 while in...

python基礎之迭代器生成裝飾器

容器是一種把多個元素組織在一起的資料結構,容器中的元素可以逐個地迭代獲取,可以用in,not in關鍵字判斷元素是否包含在容器中。通常這類資料結構把所有的元素儲存在記憶體中 也有一些特例,並不是所有的元素都放在記憶體,比如迭代器和生成器物件 在python中,常見的容器物件有 容器比較容易理解,因為...

Python基礎 迭代器

二 生成器 三 推導表示式 迭代器就是乙個容器,將可迭代物件通過iter包起來 li 1 2,3 4,5 a liter li 迭代器print next a 1print next a 2print next a 3 乙個個取值 1.訪問者不需要去關心內部結構,只需要通過next不斷去取下乙個內容...