码迷,mamicode.com
首页 > 编程语言 > 详细

Python_lambda

时间:2019-03-10 09:14:08      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:语句   不能   内容   无线   src   相加   str   形式   ret   

  最近学习到python的lambda表达式也是匿名函数, lambda不需要使用def 语句这样标准的形式定义一个函数,并不需要花很多时间去额外定义一个不常用的函数.lambda的本省就是一个长度为一行表达式,而不是一个代码块,所以不能像函数那样进行近乎无线的扩充它的语法是:  定义的名字 = lambda 参数:函数体

例如下:

1 def sum(a,b):           #这是一个普通的两个变量相加的函数
2     return a+b          #返回值为a和b相加之和
3 print(sum(1,1))

上面是一个定义一个普通函数的例子,其调用的返回值是ab之和,如果我print(sum(1,1)),那么输出的结果就是2

我们将上面的函数转换为一个lambda表达式:

sum = lambda a,b:a+b    #参数和上面的函数一样传入ab两个变量,冒号后面则是返回值a+b
print(sum(1,1))

在我们转换完成之后,调用函数,传入的参数ab和之前一样都是1,下图是输出结果:

技术图片

如图所见,输出结果都是一样的:2,至此,我们可以明显的发现,在同样的一个简单的两个相加之和的函数中,我们额外去定义一个函数并且调用,会比我们使用lambda繁琐一些,但是lambda表达式不能换行,只能在一行把所有的内容定义完成,所以在某些时刻,lambda是一个比重新定义一个函数更好的选择!

Python_lambda

标签:语句   不能   内容   无线   src   相加   str   形式   ret   

原文地址:https://www.cnblogs.com/blackmanzhang/p/10503888.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!