生成器函式 推導式

2022-09-02 22:06:13 字數 457 閱讀 3431

1.生成器: 本質就是迭代器

2種方法寫生成器:1.生成器函式

def func():

yield

g = func() - 得到生成器

函式內部有yield返回,yield把函式分段執行,生成函式被呼叫的時候就返回生成器

_next_()開始執行生成器,執行到yield,直到丟擲stopiteration

yield和return不要一起出現

send()可以給上乙個yield傳值

2.生成器表示式

生成器表示式 (結果 for迴圈 if判斷) => 生成器表示式

(結果 for迴圈 if判斷)

惰性機制, 不訪問__next__() 就沒有值.

只能向前. 不能反覆.

2.推導式

列表推導式 [結果 for迴圈 if判斷]

字典推導式

集合推導式

生成器,生成器推導式和列表推導式

python社群,大部分生成器和迭代器是一種 生成器的本質是迭代器 唯一區別 生成器是我們自己用python 構建的資料結構 迭代器都是提供的,或者轉化得來的 生成器函式 生成器表示式 python提供的 yield 乙個next 對應乙個yield yield和下乙個yield中間有 的話只執行乙...

推導式 生成器

1.推導式生成列表 表示式 for item in 可迭代物件 或者 表示式 for item in 可迭代物件 if 條件判斷 推導式生成列表 ls x for x in range 1,5 if x 2 0 2,4 2.生成器生成元組 表示式 for item in 可迭代物件 或者 表示式 f...

生成器 推導式

建立生成器的方法 1.通過生成器函式 yield 2.生成器表示式 def func1 x sum 0 for i in range 1,x x 1 yield xg func1 6 生成器函式對 print g 表示這是乙個迭代器print g.next 乙個next對應乙個yield print...