map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。下面这篇文章主要给大家介绍了关于python中map()函数的使用方法,需要的朋友可以参考下
前言
在python里有一个函数map(),它有点高大上的感觉。本文将详细给大家介绍python中map()函数使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:
或许你已经看过GOOGLE最挣钱的论文:
“MapReduce: Simplified Data Processing on Large Clusters”
Google的那篇MapReduce论文里说:Our abstraction is inspired by the map and reduce primitives present in Lisp and many other functional languages。
这句话提到了MapReduce思想的渊源,大致意思是,MapReduce的灵感来源于函数式语言(比如Lisp)中的内置函数map和reduce。
那么map()到底是干什么呢?
其实map()函数就是一个数据集到另一个数据集的映射的关系,中间并没有减少,或增加元素的。因此在python里,map()函数就是把多个列表对象里的元素,按顺序取出来,然后放进函数里进行操作,计算出来结果。它是一个并行的关系,并没有减少元素。
如下面例子:
#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])
输出结果如下:
[3, 7, 11, 15]
同理,也可以把map函数处理的思想用到集群服务器上,就是把很多数据切分,然后对每一块数据分别放到不同的电脑进行并行处理,并且都是同一种映射关系的计算,数据个数并没有增加或减少。然后再把这些处理过的数据,再集中到一起进行reduce过程。
至于python里的reduce()函数是怎么样处理呢?大家可以通过这篇文章学习下。
总结
以上是python中map()函数的方法示例的详细内容。更多信息请关注PHP中文网其他相关文章!