Python 高阶函数 : map( ) ; reduce( )

Python 高阶函数 : map( ) ; reduce( )


本文中所有代码均在IDLE中实现
如果你有任何意见或者建议,希望你能写在评论区


map( )


map(A,B)接收两个参数,参数A是一个函数(相当于一个运算法则),参数B是一个序列(一组数据)。map( )会将参数B中的所有数据均传到参数A中,并将结果以list形式返回

>>> def test(arg):     ##定义函数,作为map(A,B) 的参数A之用
    return arg*arg
>>> A = test  
>>> B = [1,2,3,4,5]   ##定义list,作为map(A,B)的参数B之用

----------
>>> map(A,B)
[1, 4, 9, 16, 25] 

map( )可以做的事情还有很多,比如将一个list内的int类型数据,转化为str类型

>>> map(str,[1,2,3,4,5]) ##str( )  是Python内置函数
['1', '2', '3', '4', '5']

reduce()


reduce(A,B) 参数A是一个函数(相当于一个运算法则,,这个函数必须接受两个变量),参数B一个序列(一组数据)把一个函数作用在一个序列[x1, x2, x3…]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算
效果如下:
**reduce(f,[x1,x2,x3,x4]) = f( f( f(x1,x2) ,x3) ,x4)
简单讲就是,把序列中的每一个数据依次与上个运算的结果再次进行计算。(说的好像很复杂,,never mind..)
**

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值