這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)Python中l(wèi)ambda和def的區(qū)別,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)主營鼓樓網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP軟件開發(fā),鼓樓h5小程序定制開發(fā)搭建,鼓樓網(wǎng)站營銷推廣歡迎鼓樓等地區(qū)企業(yè)咨詢
在Python中l(wèi)ambda和def都是用來創(chuàng)建函數(shù)的,但是這兩者有什么區(qū)別呢?先來看一個(gè)案例分析:
示例程序:
>>> f1 = lambda x,y,z: x*2+y+z # lambda帶有多個(gè)參數(shù) >>> print f1(3,2,1) 9 >>> f3 = lambda i:i*2 # lambda帶有一個(gè)參數(shù) >>> print f3(7) 14 >>> def fun1(n): ... return lambda m:m**n # m的n次方 ... >>> def fun2(m, n): ... return m+n ... >>> f2 = fun1(2) # 動(dòng)態(tài)生成一個(gè)函數(shù) >>> print f2(4) 16 >>> print fun2(3, (lambda x:x+1)(2)) # lambda用作函數(shù)參數(shù) 6 >>>
對(duì)比分析了python中l(wèi)ambda與def的用法,lambda和def的區(qū)別總結(jié)如下:
1、lambda用來創(chuàng)建匿名函數(shù),不同于def(def創(chuàng)建的函數(shù)都是有名字的)。
2、lambda不會(huì)將結(jié)果賦給一個(gè)標(biāo)識(shí)符,而def會(huì)將函數(shù)結(jié)果賦給一個(gè)標(biāo)識(shí)符。
3、lambda是一個(gè)表達(dá)式,而def是一個(gè)語句
上述就是小編為大家分享的Python中l(wèi)ambda和def的區(qū)別了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。