python匿名函数lambda返回函数对象

# python匿名函数lambda,是返回函数对象,但是没有函数变量名的函数。
# 如果定义的函数不会在其他地方使用到,则可以考虑使用匿名函数。
# 函数名 = lambda 参数:参数表达式
# #等价于
# def 函数名(参数):
#    函数体
#    return 返回值

# python的lambda表达式返回函数对象,入参可选,调用时返回表达式结果。
f=lambda a,b,c:a+b+c
print(f(1,2,3))
print('-----------')
# #等价def
# def func(a,b,c):
#    return a+b+c
# print(func(1,2,3))
# print('----------')
#lambda 跳转表
jumpL=[lambda x:x**2,lambda x:x**3,lambda x:x**4]
jumpD={2:(lambda x:x*2),3:(lambda x:x**3),4:(lambda x:x**4)}
for f in jumpL:
   print(f(2),end=',')
print('\n')
for k in jumpD:
   print(jumpD[k](2),end=',')
print('------------')
#python的map(函数,序列)内置函数,将序列的每个项作为函数入参。
print(list(map((lambda x,y:x**y),[1,2,3],[2,3,4]))) #[1, 8, 81]
print('------------')
#python的fiilter(函数,序列)内置函数,将序列的每个项作为函数入参,并且将返回的真值存入到列表中。
print(list(filter((lambda x:x<0),range(-10,10))))
#[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1]

print('-----------')
#python的reduce(函数,迭代对象),其中函数有2个参数,将迭代对象的前2个项传递给函数,
#再将前2个项的结果和迭代对象的下一项传递给函数,直到最后一项为止。
from functools import reduce
print(reduce((lambda x,y:x+y),[1,2,3,4,5]))

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值