python内置函数lambda、filter、map、reduce

1、lambda——为了减少单行函数的定义而存在的
返回函数对象,经常与其余四个内置函数一起使用

func = lambda x: x+1
||#相同
def func(x): return x+1

func(1)=2

2、filter——filter(function, sequence)
sequence中的每一项执行function过滤,所以function需要返回True/False

# 对于[2,3,4,5]中的每一项,执行lambda x: x%2==0,判断是否为偶数,输出偶数项。
filter(lambda x: x%2==0, range(2,6)) = [2, 4]

3、map——map(function, sequence)
sequence中的每一项执行function方法,返回列表

# 对于"abc"中的每一项,执行加法,输出。
map(lambda x: x+x, "abc") = ['aa', 'bb', 'cc']
map(lambda x: x+x, (1,2,3)) = [2, 4, 6]
map(lambda x, y: x*y, [1, 2, 3], [4, 5, 6]) = [4, 10, 18]

# func为None时,下边这两个效果是一样的。
map(None, [1, 2, 3], [4, 5, 6]) = [(1, 4), (2, 5), (3, 6)]
zip([1, 2, 3], [4, 5, 6]) = [(1, 4), (2, 5), (3, 6)]

4、reduce——reduce(function, sequence [, init])
sequence中的每一项迭代执行function方法,init为初始值,可以省略。所以function需要有两个参数~~~

reduce(lambda x,y: x+y, [1, 3, 5, 7, 9]) = 25
reduce(lambda x,y: x+y, [1, 3, 5, 7, 9], 100) = 125
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值