91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何分析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

建平县| 通道| 永顺县| 延边| 瑞安市| 塔河县| 上栗县| 张家界市| 和龙市| 弋阳县| 怀远县| 巴东县| 塔河县| 疏附县| 萨嘎县| 泽库县| 麻栗坡县| 沙雅县| 建宁县| 民丰县| 彰化市| 咸阳市| 会泽县| 大石桥市| 若羌县| 会同县| 呼和浩特市| 荔浦县| 庆阳市| 张北县| 木兰县| 丰县| 宁德市| 碌曲县| 长阳| 肇源县| 嫩江县| 南平市| 泽州县| 鄂伦春自治旗| 兰西县|