Python內置函數map(),filter(), reduce()的用法和區別

Python中幾個內置函數是高頻使用,爲了讓讀者深刻了解這幾個內置函數,很少嗶嗶看例子。

1,map()函數函數

描述: 會根據提供的函數對指定序列作映射。第一個參數 function 以參數序列中的每個元素調用 function 函數,返回包含每次 function 函數返回值的新列表。spa

語法:map(function, iterable, ...)    其中 function 表示函數 ,iterable 表示一個或多個序列對象

來一個計算平方數的例子blog

注意:Python 2.x 返回列表,Python 3.x 返回迭代器。用list轉換一下以下:it

2,filter()函數io

描述:函數用於過濾序列,過濾掉不符合條件的元素,返回由符合條件元素組成的新列表。function

語法:filter(function, iterable)     其中 function 表示判斷函數,iterable 表示可迭代對象。map

來一個過濾出列表的全部奇數的例子迭代器

注意:Python3.x中返回的是一個迭代對象,一樣用list轉換一下以下:語法

哇,感受這兩個函數差很少啊,看這裏:

仍是上面同樣的代碼,只是把filter換成了map函數,返回的結果是True和False,成了判斷!

filter()是吧達到篩選條件的取出來,而這個時候map()函數成了判斷正與否。

3,reduce()函數

描述:對參數序列中元素進行累積。函數將一個數據集合(鏈表,元組等)中的全部數據進行下列操做:用傳給 reduce 中的函數 function(有兩個參數)先對集合中的第 一、2 個元素進行操做,獲得的結果再與第三個數據用 function 函數運算,最後獲得一個結果。

語法:reduce(function, iterable[, initializer]) 其中function 表示函數,有兩個參數,iterable 表示可迭代對象,initializer表示可選,初始參數。

來個兩個數相加的例子

相關文章
相關標籤/搜索