python之lambda
好久沒有看python令境,一些基礎(chǔ)知識都忘記了,而且之前的筆記也比較少顾瞪,現(xiàn)在重新學(xué)習(xí)并將之記錄下來舔庶,方便后續(xù)查閱。
什么是lambda表達式
根據(jù)百度百科得到的結(jié)果如下:
“Lambda 表達式”(lambda expression)是一個匿名函數(shù)陈醒,Lambda表達式基于數(shù)學(xué)中的λ演算得名惕橙,直接對應(yīng)于其中的lambda抽象(lambda abstraction),是一個匿名函數(shù)钉跷,即沒有函數(shù)名的函數(shù)弥鹦。
根據(jù)以上定義我們可以知道,lambda表達式其實就是一個函數(shù)爷辙。
使用場景
lambda表達式一般用于替換一些簡單的函數(shù)彬坏,比如定義一個臨時函數(shù)朦促,中間運算的函數(shù),不會用到函數(shù)名的情況下栓始,可以使用lambda表達式务冕,使代碼更加優(yōu)雅。
使用lambda表達式
我們知道lambda表達式就是個函數(shù)后混滔,那怎樣進行使用呢洒疚?下面舉一個簡單的例子
def true():
return True
這是一個默認(rèn)返回True的函數(shù),沒有參數(shù)坯屿,有固定返回值油湖,轉(zhuǎn)化為lambda表達式為:
lambda : True
lambda表達式,后面直接跟參數(shù)和返回值领跛,參數(shù)與返回值直接通過冒號分隔乏德。下面再舉個栗子:
def add(x,y):
return x+y
這里我們可以看到,這個函數(shù)是有參數(shù)的吠昭,所以喊括,但轉(zhuǎn)化方式不變:變量在前,返回值在后矢棚,中間使用冒號分割.
lambda x,y:x+y
這樣就完成了郑什,現(xiàn)在對lambda感覺有了一些些丟丟熟悉,下次就可以使用了蒲肋。