欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python中map()函數(shù)的使用方法示例

 更新時(shí)間:2017年09月29日 10:52:05   作者:caimouse  
map()是 Python 內(nèi)置的高階函數(shù),它接收一個(gè)函數(shù) f 和一個(gè) list,并通過(guò)把函數(shù) f 依次作用在 list 的每個(gè)元素上,得到一個(gè)新的 list 并返回。下面這篇文章主要給大家介紹了關(guān)于python中map()函數(shù)的使用方法,需要的朋友可以參考下

前言

在python里有一個(gè)函數(shù)map(),它有點(diǎn)高大上的感覺(jué)。本文將詳細(xì)給大家介紹python中map()函數(shù)使用的相關(guān)內(nèi)容,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹:

或許你已經(jīng)看過(guò)GOOGLE最掙錢的論文:

“MapReduce: Simplified Data Processing on Large Clusters”

Google的那篇MapReduce論文里說(shuō):Our abstraction is inspired by the map and reduce primitives present in Lisp and many other functional languages。

這句話提到了MapReduce思想的淵源,大致意思是,MapReduce的靈感來(lái)源于函數(shù)式語(yǔ)言(比如Lisp)中的內(nèi)置函數(shù)map和reduce。

那么map()到底是干什么呢?

其實(shí)map()函數(shù)就是一個(gè)數(shù)據(jù)集到另一個(gè)數(shù)據(jù)集的映射的關(guān)系,中間并沒(méi)有減少,或增加元素的。因此在python里,map()函數(shù)就是把多個(gè)列表對(duì)象里的元素,按順序取出來(lái),然后放進(jìn)函數(shù)里進(jìn)行操作,計(jì)算出來(lái)結(jié)果。它是一個(gè)并行的關(guān)系,并沒(méi)有減少元素。

如下面例子:

#python 3. 6 
#蔡軍生 
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
 
def sum(x, y): 
 return x + y 
 
list1 = [1, 3, 5, 7] 
list2 = [2, 4, 6, 8] 
 
result = map(sum, list1, list2) 
print([x for x in result]) 

輸出結(jié)果如下:

[3, 7, 11, 15]

同理,也可以把map函數(shù)處理的思想用到集群服務(wù)器上,就是把很多數(shù)據(jù)切分,然后對(duì)每一塊數(shù)據(jù)分別放到不同的電腦進(jìn)行并行處理,并且都是同一種映射關(guān)系的計(jì)算,數(shù)據(jù)個(gè)數(shù)并沒(méi)有增加或減少。然后再把這些處理過(guò)的數(shù)據(jù),再集中到一起進(jìn)行reduce過(guò)程。

至于python里的reduce()函數(shù)是怎么樣處理呢?大家可以通過(guò)這篇文章學(xué)習(xí)下。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論