map()的使用

   map()的使用方法形如map(f(x),Itera).对,它有两个参数,第一个参数为某个函数,第二个为可迭代对象。如果不懂什么是函数,不懂什么是可迭代对象没关系,记住下面的例子就可以了:

  

 >>> def g(x):
return 3 * x >>> l=map(g,[1,3,4,5,7,10])
>>> list(l)
[3, 9, 12, 15, 21, 30]

定义的g(x)就是作为map()第一个参数,它的作用是取参数X的三倍。

[1,3,4,5,7,10]列表作为g(x)的第二个参数,它是一个列表。没错,列表是一个可迭代对象,当然可迭代对象不仅仅有列表,其他的可以慢慢学习。调用map函数后,g(x)将会作用到列表的每个元素,我们来看看作用后的效果:

>>> list(l) 
[3, 9, 12, 15, 21, 30]

是的,l的每个元素为原来的三倍。
函数应该懂了吧。
可迭代对象应该懂了吧。
重点是,map()函数会用了吧。
恭喜! reduce()的使用
  reduce()的使用方法形如reduce(f(x),Itera).对,它的形式和map()函数一样。不过参数f(x)必须有两个参数。reduce()函数作用是:把结果继续和序列的下一个元素做累积计算。废话不多说,请看实例:
>>> from functools import reduce
>>> def add(x,y): #定义一个相加函数
return x+y >>> reduce(add,[1,2,3,4,6])
16

add(x,y)是我们定义的一个函数,将add函数和[1,2,3,4,6]列表传入reduce函数,就相当于1+2+3+4+6 =16。即把结果继续和序列的下一个元素做累加。

我们再来举一实例来说明:

>>> def fun(x,y):#定义一个函数
return 10*x+y >>> reduce(fun,[2,5,6])
256

定义的函数fun作用是将x,y转化成一个整数xy。于是作用于reduce就会将列表[x1,x2,x3,x4,x5]转化成整数x1x2x3x4x5。

这就是reduce()的作用。

以上就是内建函数map()和reduce()的简单用法。

 

最新文章

  1. 旺财速啃H5框架之Bootstrap(四)
  2. HTML5- Canvas入门(四)
  3. 上传图片shell绕过过滤的几种方法
  4. java servlet+mysql全过程(原创)
  5. yii2 如何用命名空间方式使用第三方类库
  6. Multi-voltage和power gating的实现
  7. Sobel算子 (转)
  8. viewPage
  9. 使用java发送邮件sp自动发送邮件方法
  10. C++的构造函数和析构函数
  11. 将图片保存成png 或者jpg格式
  12. ffplay的快捷键以及选项
  13. 发布开源库到JCenter所遇到的一些问题记录
  14. jsp中一个标签两种方式绑定两个click事件导致未执行的问题
  15. Math的一些方法
  16. LINQ to Entities does not recognize the method 'System.DateTime AddDays(Double)' method, and this method cannot be translated into a store expression.
  17. 好用好玩的Python包
  18. 有关Java内存溢出及内存消耗的小知识
  19. 2010年腾讯前端面试题学习(jquery,html,css部分)
  20. CSS中可以继承和不能继承的属性

热门文章

  1. False Ordering LightOJ - 1109(暴力。。唉,。又是一个水题。。)
  2. 【bzoj3570】 Cqoi2014—通配符匹配
  3. Linux内核设计第七周学习总结 Linux内核如何装载和启动一个可执行程序
  4. 解题:POI 2004 String
  5. [SDOI2009] HH去散步 (矩阵乘法)
  6. ubuntu 安装python3.6.6
  7. Java入门:基础算法之计算园的面积
  8. linux基础命令之sed
  9. jenkins集成sonarqube代码审核
  10. linux 中 virtualenvwrapper的使用