Python Lambda函数用法详解

Python Lambda函数用法详解

01781

Python lambda() 函数能够简化程序,我们可以将 lambda 表达式视为一种函数的简化书写方式,它可以根据输入的值确定输出的值。

通常 Python 定义函数时需要给定函数名称,但是 lambda 并不需要函数名,所以我们称 lambda 是一种匿名函数的表达式写法。其语法如下。

lambda 参数列表, … : 表达式其中表达式之前的冒号“:”不能省略,并且不能使用 return 语句。例如,将数学函数 f(x)=3x-1 写成 lambda 表达式,Python代码如下:

result = lambda x : 3*x-1  #lambda()函数
print(result(3)) #输出数值8

也就是说“:”左边是参数,右边是表达式或程序块。就本例而言,“:”右边是表达式 3*x-1,左边参数的个数是 1。

那么 Python自定义函数与 lambda() 函数有什么不同呢?下面以一个简单的例子加以说明,Python代码如下:

def formula(x, y): #自定义函数
    return 3*x+2*y

formula = lambda x, y : 3*x+2*y  #表示lambda有两个参数
print(formula (5,10)) ##传入两个数值让lambda()函数做运算,输出数值35

上面的程序代码中分别使用了自定义函数及 lambda() 函数两种方式,我们可以观察到自定义函数与 lambda() 函数有以下区别:

  • 自定义函数的函数体可以有多行语句,但是 lambda() 函数只能有一行表达式。
  • 自定义函数有名称,但 lambda() 函数无名称,lambda() 函数必须指定一个变量来存储运算结果。
  • 自定义函数的结果以 return 语句返回,lambda() 函数将结果赋给指定的变量。
  • lambda() 函数必须以变量名(如上例中的 formula 变量)来调用,依其定义传入参数。
© 版权声明
THE END
喜欢就支持一下吧
点赞1赞赏
分享
评论 抢沙发
HarryPotter的头像|艾奇编程网

昵称

取消
昵称表情