国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python中reduce()函數的使用方法示例

2020-01-04 16:32:35
字體:
來源:轉載
供稿:網友

前言

本文主要給大家介紹了關于python中reduce()函數使用的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹:

reduce()函數在庫functools里,如果要使用它,要從這個庫里導入。reduce函數與map函數有不一樣地方,map操作是并行操作,reduce函數是把多個參數合并的操作,也就是從多個條件簡化的結果,在計算機的算法里,大多數情況下,就是為了簡單化。比如識別圖像是否是一只貓,那么就是從眾多的像素里提煉出來一個判斷:是或否。可能是幾百萬個像素,就只出來一個結果。在GOOGLE大規模集群里,就是利用這個思想,把前面并行處理的操作叫做map,并行處理之后的結果,就需要簡化,歸類,把這個簡化和歸類的過程就叫做reduce。由于reduce只能在一臺主機上操作,并不能分布式地處理,但是reduce處理的是map結果,那么意味著這些結果已經非常簡單,數據量大大減小,處理起來就非常快。

因此可以把mapreduce過程叫做分析歸納的過程。

看一下面reduce()的例子:

#python 3. 6 #蔡軍生 #http://blog.csdn.net/caimouse/article/details/51749579 # from functools import reduce  result = reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) print(result) 

輸出結果:

15

在這個例子里,其實計算過程是這樣的:

((((1+2)+3)+4)+5)

python中reduce函數,python中的reduce函數,python3,reduce函數

再看一個階乘的例子:

#python 3. 6 #蔡軍生 #http://blog.csdn.net/caimouse/article/details/51749579 # from functools import reduce  n = 3 print(reduce(lambda x, y: x * y, range(1, n + 1))) # 6 

輸出結果:

6

reduce函數,reduce函數會對參數序列中元素進行累積。

reduce函數的定義:

reduce(function, sequence[, initial]) -> value

function參數是一個有兩個參數的函數,reduce依次從sequence中取一個元素,和上一次調用function的結果做參數再次調用function。

第一次調用function時,如果提供initial參數,會以sequence中的第一個元素和initial作為參數調用function,否則會以序列sequence中的前兩個元素做參數調用function。

reduce(lambda x, y: x + y, [2, 3, 4, 5, 6], 1)

結果為21(  (((((1+2)+3)+4)+5)+6)  )

reduce(lambda x, y: x + y, [2, 3, 4, 5, 6])

結果為20

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 博爱县| 富顺县| 宜春市| 喀喇沁旗| 高邮市| 土默特左旗| 朝阳县| 离岛区| 易门县| 防城港市| 临安市| 鄱阳县| 驻马店市| 宝坻区| 舒兰市| 始兴县| 拉萨市| 偏关县| 武乡县| 咸阳市| 耒阳市| 桦川县| 大厂| 临清市| 邢台县| 齐河县| 赤壁市| 平利县| 竹山县| 肥城市| 方山县| 彝良县| 富蕴县| 白水县| 龙南县| 古浪县| 宁德市| 德格县| 图木舒克市| 德州市| 龙游县|