python中的lambda匿名函数

匿名函数用维基百科的解释就是:一种无需定义标识符(函数名)的函数或子程序。

目前在Java,C++,以及python中都支持匿名函数的使用,通常匿名函数理解起来要比普通函数困难一些,那么为什么还要使用匿名函数呢,因为非匿名函数在定义时就创建了函数对象和作用域对象,即使不调用,也会占用内存;而匿名函数只有在调用的时候才会临时创建对象,调用完,就会释放,相比来说匿名函数更节省空间。

在python中用关键字lambda来表示匿名函数,形式如下

lambda 变量名:函数表达式

下面看一下lambda匿名函数的简单示例:

匿名函数也是个函数对象,可以将其赋值给一个变量,比如上面式子中的square和sum,然后再用变量调用函数。

可以看到,在lambda函数中,变量个数可以为一个或多个,但是,函数表达式只能有一个,如果表达式有多个,会报错,如下:

lambda匿名函数不需要return,返回值就是函数表达式要计算的结果。正因为lambda匿名函数的函数表达式只能有一个,决定了匿名函数无法完成过于复杂的操作。这也符合“万事没有十全十美”,如果匿名函数既能节省内存,又能完成非匿名函数的各种功能,那非匿名函数就没有存在的必要了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值