python內(nèi)置函數(shù):lambda、map、filter簡單介紹
lambda
lambda可以理解為一種小函數(shù),但是它是一個表達式,而不是一個語句,所以在def不允許出現(xiàn)的地方仍然可以使用lambda函數(shù),例如list里。但是lambda內(nèi)只可以執(zhí)行一個表達式。
def f(x): return x**2 print f(3) a = lambda x: x**2 print a(3) a = lambda x,y: x+y print a(1,2) ~
一個lambda語句就相當(dāng)于一個函數(shù)定義,調(diào)用的時候也和函數(shù)一樣。
map函數(shù)
有時候我們可以需要處理一個列表里的所有元素,可以使用一個for循環(huán)來完成這個工作。但是Python內(nèi)置的map函數(shù)可以幫我們的忙,它接受函數(shù)和列表作為參數(shù),然后返回函數(shù)處理之后的列表:
map函數(shù)有的時候可以用來替代循環(huán),
它比for循環(huán)的效率更高,原因是它是直接對應(yīng)的c語言里的循環(huán)。
def add1(a): return a + 1 def add2(a, b): return a + b def add3(a, b, c): return a + b + c a1 = [1,2,3,4,5] a2 = [1,2,3,4,5] a3 = [1,2,3,4,5] b = map(add1, a1) print b b = map(add2, a1, a2) print b b = map(add3, a1, a2, a3) print b
filter函數(shù),是用來過濾列表的。簡單的說就是用一個函數(shù)來過濾一個列表,把列表的每一項傳遞進入過濾函數(shù),過濾函數(shù)返回false就從這個列表中刪除該項。
def add1(a):
if a > 2:
return True
return False
a1 = [1,2,3,4,5]
b = filter(add1, a1)
print b
其實這個filter函數(shù)相當(dāng)于這個:
c = [b for b in a1 if b > 2] print c
總結(jié)
以上所述是小編給大家介紹的python內(nèi)置函數(shù):lambda、map、filter,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Python函數(shù)的返回值、匿名函數(shù)lambda、filter函數(shù)、map函數(shù)、reduce函數(shù)用法實例分析
- Python lambda表達式filter、map、reduce函數(shù)用法解析
- python3 map函數(shù)和filter函數(shù)詳解
- Python3的高階函數(shù)map,reduce,filter的示例詳解
- Python之lambda匿名函數(shù)及map和filter的用法
- Python中map,reduce,filter和sorted函數(shù)的使用方法
- Python內(nèi)置函數(shù)之filter map reduce介紹
- Python map及filter函數(shù)使用方法解析
相關(guān)文章
python的paramiko模塊實現(xiàn)遠程控制和傳輸示例
本篇文章主要介紹了python的paramiko模塊實現(xiàn)遠程控制和傳輸示例,非常具有實用價值,需要的朋友可以參考下2017-10-10
詳解TensorFlow訓(xùn)練網(wǎng)絡(luò)兩種方式
本文主要介紹了TensorFlow訓(xùn)練網(wǎng)絡(luò)兩種方式,一種是基于tensor(array),另外一種是迭代器,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12
python基礎(chǔ)之面對對象基礎(chǔ)類和對象的概念
這篇文章主要介紹了python面對對象基礎(chǔ)類和對象的概念,實例分析了Python中返回一個返回值與多個返回值的方法,需要的朋友可以參考下2021-10-10
Python按行讀取文件的實現(xiàn)方法【小文件和大文件讀取】
這篇文章主要介紹了Python按行讀取文件的實現(xiàn)方法,結(jié)合實例形式分析了針對小文件和大文件的讀取方法,需要的朋友可以參考下2016-09-09

