這期內容當中小編將會給大家?guī)碛嘘P lambda表達式如何在Python中應用,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)建站服務電話:18980820575,為您提供成都網(wǎng)站建設網(wǎng)頁設計及定制高端網(wǎng)站建設服務,創(chuàng)新互聯(lián)建站網(wǎng)頁制作領域十載,包括成都木托盤等多個行業(yè)擁有多年設計經(jīng)驗,選擇創(chuàng)新互聯(lián)建站,為企業(yè)保駕護航。lambda表達式,通常是在需要一個函數(shù),但是又不想費神去命名一個函數(shù)的場合下使用,也就是指匿名函數(shù)。
lambda所表示的匿名函數(shù)的內容應該是很簡單的,如果復雜的話,干脆就重新定義一個函數(shù)了,使用lambda就有點過于執(zhí)拗了。
lambda就是用來定義一個匿名函數(shù)的,如果還要給他綁定一個名字的話,就會顯得有點畫蛇添足,通常是直接使用lambda函數(shù)。如下所示:
add = lambda x, y : x+y add(1,2) # 結果為3
那么到底要如何使用lambda表達式呢?
1、應用在函數(shù)式編程中
Python提供了很多函數(shù)式編程的特性,如:map、reduce、filter、sorted等這些函數(shù)都支持函數(shù)作為參數(shù),lambda函數(shù)就可以應用在函數(shù)式編程中。如下:
# 需求:將列表中的元素按照絕對值大小進行升序排列 list1 = [3,5,-4,-1,0,-2,-6] sorted(list1, key=lambda x: abs(x))
運行結果:
[0, -1, -2, 3, -4, 5, -6]
當然,也可以如下:
list1 = [3,5,-4,-1,0,-2,-6] def get_abs(x): return abs(x) sorted(list1,key=get_abs)
只不過這種方式的代碼看起來不夠Pythonic
2、應用在閉包中
def get_y(a,b): return lambda x:ax+b y1 = get_y(1,1) y1(1) # 結果為2
當然,也可以用常規(guī)函數(shù)實現(xiàn)閉包,如下:
def get_y(a,b): def func(x): return ax+b return func y1 = get_y(1,1) y1(1) # 結果為2
上述就是小編為大家分享的 lambda表達式如何在Python中應用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
標題名稱:lambda表達式如何在Python中應用-創(chuàng)新互聯(lián)
當前路徑:http://jinyejixie.com/article36/egdsg.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、品牌網(wǎng)站建設、微信公眾號、關鍵詞優(yōu)化、軟件開發(fā)、標簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)