一 函數(shù)式編程
高階函數(shù)
變量可以指向函數(shù)
函數(shù)名也是變量
將函數(shù)當(dāng)做變量傳入函數(shù)參數(shù)? >> 高階函數(shù)
map()函數(shù),接收函數(shù)和Iterable,結(jié)果返回Iterator
reduce()函數(shù),接收函數(shù)和一個(gè)序列
filter()函數(shù),接收函數(shù)和一個(gè)序列,根據(jù)函數(shù)True或False決定去留,結(jié)果返回Iterator
sorted(obj,key=func,reverse=True)
返回函數(shù)(不是很懂,以后再仔細(xì)看)
可以將函數(shù)作為返回值返回,內(nèi)部函數(shù)可以引用外部函數(shù)的參數(shù)和局部變量,當(dāng)返回函數(shù)時(shí),相關(guān)參數(shù)和變量都保存在返回的函數(shù)中,這種程序結(jié)構(gòu)稱為閉包
匿名函數(shù),python對(duì)此支持有限
lambda表示匿名函數(shù)。匿名函數(shù)只能有一個(gè)表達(dá)式,不用寫return
裝飾器 Decorator
在運(yùn)行期間動(dòng)態(tài)增加功能的方式
在方法前加上@decorator
偏函數(shù)
functools.partial()
把一個(gè)函數(shù)的某些參數(shù)固定住(設(shè)置默認(rèn)值),返回一個(gè)新的函數(shù)
二 模塊
一個(gè)python文件即一個(gè)模塊,多個(gè)模塊組成一個(gè)包,包里面必須要有__init__.py模塊,否則當(dāng)成普通目錄