亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何分析python的map、reduce函數

發布時間:2021-12-04 19:45:02 來源:億速云 閱讀:146 作者:柒染 欄目:大數據

這篇文章給大家介紹如何分析python的map、reduce函數,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

小編講的是Python的map、reduce兩大函數。

這對兄弟是出現頻率極高相當實用的python函數,初學者會較難理解,看完本文你就能搞定它們嘍!

如何分析python的map、reduce函數

01

map

map()方法會將 一個函數 映射序列的每一個元素上,生成新序列,包含所有函數返回值。

也就是說序列里每一個元素都被當做x變量,放到一個函數f(x)里,其結果是f(x1)、f(x2)、f(x3)......組成的新序列。

如何分析python的map、reduce函數

如何使用map函數?

     
   
   
   map(function_to_apply, list_of_inputs)
  • function_to_apply:代表函數

  • list_of_inputs:代表輸入序列

注意:python3中 map函數返回的是 迭代器  

大多數時候,我們要把列表中所有元素一個個地傳遞給一個函數,并收集輸出。

比方說:

     
   
   
   items = [1, 2, 3, 4, 5] # 列表  
    
    squared = []  
    
    for i in items:  
    
        squared.append(i**2)

map函數可以讓我們用一種簡單而漂亮得多的方式來實現:

     
   
   
   items = [1, 2, 3, 4, 5]  
    
    squared = list(map(lambda x: x**2, items))

上面使用了匿名函數,也可以自定義函數:

     
   
   
   items = [1, 2, 3, 4, 5]  
    
    def f(x):  
    
        return x**2  
    
    squared = list(map(f, items))

02

reduce

reduce相比map稍復雜點

reduce的工作過程是 :在迭代序列的過程中,首先把 前兩個元素(只能兩個)傳給 函數,函數加工后,然后把 得到的結果和第三個元素 作為兩個參數傳給函數參數, 函數加工后得到的結果又和第四個元素 作為兩個參數傳給函數參數,依次類推。 

如何分析python的map、reduce函數

reduce函數怎么用?

     
   
   
   reduce(function, iterable[, initializer])
  • function:代表函數

  • iterable:序列

  • initializer:初始值(可選)

與map不同,reduce不可以直接使用,需要用from functools import reduce導入

如何分析python的map、reduce函數

比如說我要求10的階乘,就可以用reduce做:

     
   
   
   # 導入reduce  
    
    from functools import reduce   
    
    # 定義函數  
    
    def f(x,y):  
    
        return x*y  
    
    # 定義序列,含1~10的元素  
    
    items = range(1,11)  
    
    # 使用reduce方法  
    
    result = reduce(f,items)  
    
    print(result)

關于如何分析python的map、reduce函數就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖安县| 化隆| 东源县| 荣成市| 江西省| 清流县| 定南县| 木里| 襄垣县| 郑州市| 阿拉尔市| 西充县| 滦平县| 建宁县| 英吉沙县| 遂昌县| 榆林市| 盐山县| 滁州市| 尤溪县| 福鼎市| 明水县| 卢湾区| 兴安盟| 东光县| 玛纳斯县| 陇南市| 聂荣县| 雷波县| 商城县| 甘南县| 喀喇| 灵山县| 莫力| 苍山县| 新巴尔虎左旗| 高碑店市| 会泽县| 汉沽区| 改则县| 来凤县|