python基礎 生成器

2021-09-02 21:31:50 字數 1126 閱讀 5598

生成器函式

def generator():

print(1)

return 'a'

ret = generator()

print(ret)

只要含有yield關鍵字的函式都是生成器函式

yield不能和return共用且需要寫在函式內

def generator():

print(1)

yield 'a'

#生成器函式 : 執行之後會得到乙個生成器作為返回值

ret = generator()

print(ret)

print(ret.__next__())

def generator():

print(1)

yield 'a'

print(2)

yield 'b'

yield 'c'

g = generator()

for i in g:

print(i)

ret = g.__next__()

print(ret)

ret = g.__next__()

print(ret)

ret = g.__next__()

print(ret)

#娃哈哈%i

def wahaha():

for i in range(2000000):

yield '娃哈哈%s'%i

g = wahaha()

g1 = wahaha()

print(g.__next__())

print(g1.__next__())

g = wahaha()

count = 0

for i in g:

count +=1

print(i)

if count > 50:

break

print('*******',g.__next__())

for i in g:

count +=1

print(i)

if count > 100:

break

python基礎 生成器

生成器是根據某種演算法得出的一系列元素,需要用到該元素,才會生成出來,比列表節省記憶體空間。生成器相當於儲存演算法,授人以漁,列表之類的是授人以魚。第一種建立生成器的方法 1 gen x 2 for x in range 5 type gen 通過next 函式得到生成器的每個值 next gen ...

python 生成器作用 Python生成器

生成器介紹 在函式內部包含yield關鍵字,那麼該函式執行的結果是生成器,生成器就是迭代器。生成器的功能 把函式結果做成迭代器 以一種優雅的方式封裝好iter,next 提供了一種自己定義迭代器的方式。使用生成器建立乙個迭代器 def a print a yield 11 使用yield,執行後返回...

python生成器好處 Python生成器筆記

python中三大器有迭代器,生成器,裝飾器,本文主要講述生成器。主要從生成器的概念,本質,以及yield關鍵字的使用執行過程。本質 生成器是一類特殊的迭代器,使用了yield關鍵字的函式不再是函式,而是生成器。使用了yield的函式就是生成器 1.yield關鍵字有兩點作用 1.1 yield語句...