>>def fun(x): ..."/>
溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

【Python】python map()函數(shù)和lambda表達(dá)式

發(fā)布時(shí)間:2020-08-06 23:10:06 來源:ITPUB博客 閱讀:175 作者:小亮520cl 欄目:編程語言

python map(fun,[arg]+)函數(shù)最少有兩個(gè)參數(shù),第一參數(shù)為一個(gè)函數(shù)名,第二個(gè)參數(shù)是對(duì)應(yīng)的這個(gè)函數(shù)的參數(shù)(一般為一個(gè)或多個(gè)list)

>>>def fun(x):
...     return x+1
...
>>>list(map(fun,[1,2,3]))
>>>[2,3,4]


多參數(shù)例子:

>>>def fun(x,y,z):
...     return x*y*z
...
>>>list(map(fun,[1,2,3],[1,2,3],[1,2,3]))
>>>[1,8,27]


(python 3.x 中map函數(shù)返回的是iterators,無法像python2.x 直接返回一個(gè)list,故需要再加上一個(gè)list()將iterators轉(zhuǎn)化為一個(gè)list)。

lambda表達(dá)式:有人說類似于一種匿名函數(shù),通常是在需要一個(gè)函數(shù),但是又不想費(fèi)神去命名一個(gè)函數(shù)的場(chǎng)合下使用。

>>>s = [1,2,3]
>>>list(map(lambda x:x+1,s))
>>>[2,3,4]


這里的 lambda x:x+1 相當(dāng)于 上面的fun()函數(shù), lambda和(冒號(hào)): 之間相當(dāng)于 fun()函數(shù)的參數(shù), :(冒號(hào))之后 x+1 相當(dāng)于fun()函數(shù)的return x+1

>>>s = [1,2,3]
>>>list(map(lambda x,y,z:x*y*z ,s,s,s))
>>>[1,8,27]


如上。

https://blog.csdn.net/u013944212/article/details/55095687

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI