1.偏函數(shù):基本沒什么用(在python3中被默認(rèn)參數(shù)代替)
2.閉包函數(shù):熟悉語法即可
3.匿名函數(shù):熟悉操作即可
偏函數(shù):
PYTHON中的偏函數(shù),就是一個語法糖
def show2(name, msg):
print(name, “:”, msg)
from functools import partial
s = partial(show2, msg = “HI”)
s(“tom”)
show2(“jerry”, “hello”)
在PYTHON3中提供的默認(rèn)參數(shù)操作,功能非常強(qiáng)大,備受廣大群眾喜歡
def show(name, msg=None):
print(name, “:”, msg)
show(“tom”, “hello”)
Show(“jerry”)
閉包函數(shù):
因為函數(shù)的出現(xiàn),導(dǎo)致變量出現(xiàn)了分化:全局變量、局部變量
全局變量:當(dāng)前模塊中任意地方都能訪問
局部變量:當(dāng)前函數(shù)中可以操作
~全局變量-局部變量:變量-在函數(shù)外部調(diào)用訪問
def outer():
msg = “這是一個局部變量”
print(“這是一個函數(shù)”, msg)
def inner():
print(“可以訪問外部變量msg”, msg)
return msg
return inner
my_func = outer()
msg = my_func()
print(msg)
匿名函數(shù):
lambda表達(dá)式:通過一個表達(dá)式實現(xiàn)函數(shù)功能
基本語法:lambda 參數(shù)列表:表達(dá)式語句
參數(shù)列表:用來給表帶是傳遞數(shù)據(jù)
表達(dá)式語句:計算表達(dá)式,計算結(jié)果會自動輸出
注意事項:lambda表達(dá)式,主要是用來替代功能簡單的函數(shù)的!提高代碼的簡潔性,不要濫用!大量使用lambda表達(dá)式會造成代碼可讀性的嚴(yán)重下降。
fn = lambda x, y: x + y
等價于
def fn2(x,y):
return x + y
print(fn(1, 2))
Print(fn2(11, 22))