python中map()函数的使用方法示例

yipeiwu_com6年前Python基础

前言

在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设计】的支持。

相关文章

Python3调用微信企业号API发送文本消息代码示例

本文主要向大家分享了Python3调用微信企业号API发送文本消息示例的有关代码,具体如下: #!/usr/bin/env python # -*- coding:utf-8 -*-...

Python设计模式之策略模式实例详解

Python设计模式之策略模式实例详解

本文实例讲述了Python设计模式之策略模式。分享给大家供大家参考,具体如下: 策略模式(Strategy Pattern):它定义了算法家族,分别封装起来,让他们之间可以相互替换,此模...

python实现文件批量编码转换及注意事项

起因:大三做日本交换生期间在修一门C语言图像处理的编程课,在配套书籍的网站上下载了sample,但是由于我用的ubuntu18.04系统默认用utf-8编码,而文件源码是Shift_JI...

Python中利用sorted()函数排序的简单教程

排序算法 排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大...

python实现下载pop3邮件保存到本地

python实现下载pop3邮件保存到本地

利用python进行unix管理一书中有一个登陆下载邮箱的脚本,实练了下还不错,对于邮箱备份来说还是比较快捷的,但是其命名方式是以编号和 文件大小来命名的,不方便阅读,于是进行了改进修改...