1、reduce函數git
本函數釋義:github
(1)原意是歸併,縮減微信
(2)把一個可迭代的對象最後歸併成一個結果函數
(3)對於做爲參數的函數要求:必須由兩個參數,必須返回一個結果學習
import functools #定義一個操做函數,加入操做函數只是相加 def myAdd(x,y): return x + y #對於列表執行myAdd的操做 num1 = functools.reduce(myAdd,[1,2,3,4,5,6]) print(num1)
釋義:咱們遞歸的對列表進行加和,1+2=3,3+3=6,6+4=10,10+5=15,15+6=21,經過定義一個規則(也就是這裏面的函數),咱們有兩個輸入,一個輸出,而後進行遞歸操做。大數據
2、filter函數ui
1.過濾函數:對一組數據進行過濾,符合條件的數據會生成一個新的列表並返回spa
2.與map函數相比.net
(1)相同點:都對列表的每個與納蘇進行逐一的操做線程
(2)不一樣點:map會生成一個跟元數據相對應的新隊列;filter函數不必定,只要符合條件的纔會進入新的數據集合
3.filter函數怎麼寫
(1)利用給定的函數進行判斷
(2)返回值必定是布爾值
(3)調用格式:filter(f,data),f是過濾函數,data是數據
def isEven(a): return a % 2 ==0 list1 = [555,44,5,52652,56,523,6,626,656] #利用這個函數咱們把列表中的偶數都給挑選出來了 rst1 = filter(isEven,list1) print(type(rst1)) print(rst1) print(list(rst1))
仍是前天的味道,filter函數返回的是一個filter類,打印出來也再也不是一個列表,須要咱們轉換成列表,其中0x000...表明的是一個運行線程。
3、源碼:
d19_3_reduce&fliter_function
地址:https://github.com/ruigege66/Python_learning/blob/master/d19_3_reduce%26fliter_function
2.CSDN:https://blog.csdn.net/weixin_44630050(心悅君兮君不知-睿)
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關注微信公衆號:傅里葉變換,後臺回覆」禮包「,獲取大數據學習資料。