Python:匿名函数 lambda

匿名函数顾名思义:即没有名字

  • 没有名字那输入调用这个函数?
  • 没有名字如何调用?
  • 最关键的是如何使用这个函数?

Python中是借助lambda表达式构建匿名函数的尼?

格式:【lambda 参数列表 : 表达式】

  • lambda x : x * 2 

调用:(lambda x : x * 2 )   (4)   

匿名函数:

  • 使用lambda 关键子来定义函数
  • 参数列表不需要小括号
  • 冒号是用来分割参数列表和表达式的
  • 不需要使用return,表达式的值就是匿名函数的表达值
  • lambda表达式(匿名函数)只能写在一行上,被称为单行函数

用途:

  • 在高阶函数传参是,使用lambda表达式,往往能简化代码

 

例子:

函数结果
(lambda :0) () 0
(lambda x , y = 3: x + y) (5)  8
(lambda x ,y = 3 : x + y)  ( 5, 5)10
(lambda x ,* , y = 10  :  x + y)  ( 5)15
(lambda x ,* , y = 10  :  x + y)  ( 5 ,y = 20)25
(lambda *args: (x for x in args)) (*range(5)迭代器
(lambda *args: [x+1 for x in args]) (*range(5))列表
(lambda *args: {x+2 for x in args}) (*range(5)) 集合
[x for x in (lambda *args: map(lambda x: x+1, args))(*range(5))]列表
[x for x in (lambda *args: map(lambda x: (x+1,args), args))(*range(5))][(1, (0, 1, 2, 3, 4)), (2, (0, 1, 2, 3, 4)), (3, (0, 1, 2, 3, 4)), (4, (0, 1, 2, 3, 4)), (5, (0, 1, 2, 3, 4))]
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值