一 . 1.迭代器 : __iter__( ) __next__( )
生成器 :本質就是迭代器,兩種方式寫生成器 (1)生成器函式 (2)生成器表示式
2.生成器函式:函式內部由yield. yield返回 - >return ,yield可以把函式分段執行,生成器函式被呼叫的時候,返回生成器。
def func ( ):
yield
g = func ( ) ---得到生成器
生成器的用法和迭代器基本一致,__next__( )開始執行生成器,執行到yield.知道沒有yield,丟擲stopiteration
send ( ) 可以給上乙個yield傳值
(1)省記憶體 (2)惰性機制,不訪問 __next__( )就沒有值 (3)只能向前,不能反覆
二 . 各種推導式
1.列表推導式 [ 結果 for 迴圈 if 判斷
2.字典推導式
3.集合推導式
三 . 生成器表示式(難點)
( 結果 for 迴圈 if 判斷)
惰性機制 ,不訪問__next__( ) 就沒有值
只能向前,不能反覆
day12 裝飾器和生成器和模組
有參裝飾器的功能 在給函式新增功能的時候可以通過引數控制具體的操作 操作不固定 怎麼寫有參裝飾器 寫法 def 函式名0 裝飾器引數列表 def 函式名1 func def 函式名2 args,kwargs result func args,kwargs 新功能return result retur...
day12 生成器和各種推導式
今天主要學習了 1.生成器 2.生成器函式 3.各種推導式 比較詭異,理解了很簡單,不理解很難 4.生成器表示式 重點 一.生成器 def func print 我叫周潤發 return 林志玲 return在函式中表示返回的意思 set func print set 這裡的set 就是建立了乙個生...
day12學習筆記(列表推導式 生成器 迭代器
迭代器iterator 列表推導式又稱之為列表解析式,運用列表解析式,可以快速生成list,可以通過乙個list推導出另乙個list,而 卻十分簡潔。經典語法 語法結構 每個列表推導式都在 for 之後跟乙個表示式,然後有零到多個 for 或 if 子句。列表推導式的執行順序 各語句之間是巢狀關係,...