更新時間:2019-10-31 來源:黑馬程序員 瀏覽量:
filter函數(shù)會對指定序列執(zhí)行過濾操作。
filter函數(shù)的定義如下:
filter(function, iterable)
在上述定義中,第一個參數(shù) function可以是函數(shù)名稱或者None,第二個參數(shù) iterable可以
是序列、支持迭代的容器或迭代器。返回值為迭代器對象(Python2中,filter函數(shù)的返回值是列表類型)。其中,function函數(shù)只能接收一個參數(shù),而且該函數(shù)的返回值為布爾值。【推薦了解:黑馬python課程】
filter函數(shù)的作用是以參數(shù)迭代器中的每個元素分別調(diào)用 function函數(shù),最后返回的迭代器
包含調(diào)用結(jié)果為True的元素。示例代碼如下:
func = lambda x: x % 2
result = filter(func, [1, 2, 3, 4, 51])
print (list(result))
上述示例中,定義了一個匿名函數(shù)func,返回某個數(shù)取余以后的結(jié)果,接著調(diào)用filter函數(shù)將[1, 2, 3, 4, 5]中的每個元素取出來,作為func的參數(shù)調(diào)用func函數(shù),之后將結(jié)果轉(zhuǎn)換為列表的形式顯示。
程序輸出結(jié)果為:
[1, 3, 5]
本文來自:黑馬程序員 m.3rdspacecomics.com