Python Lambda

lambda函数是一个简短的匿名函数。

lambda函数可以接受任意数量的参数,但只能包含一个表达式。

语法

lambda 参数 : 表达式

接受参数,执行表达式,返回结果:

示例

一个lambda函数,把参数加10,然后返回结果:

x = lambda a : a + 10
print(x(5))

Lambda函数可以接受任意数量的参数:

示例

一个lambda函数,将参数a与参数b相乘,然后返回结果:

x = lambda a, b : a * b
print(x(5, 6))

示例

一个lambda函数,对参数a、b、c求和并返回:

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))

为什么使用Lambda函数?

lambda的好处是让代码更简洁优雅。

假设你有一个函数,带一个参数,这个参数将与一个未知数相乘:

def myfunc(n):
  return lambda a : a * n

上面的函数定义返回一个lambda函数。

下面的示例使用这个函数定义创建了一个函数,该函数把传入的参数乘以2,返回结果:

示例

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)

print(mydoubler(1))

使用相同的函数定义再创建一个函数,该函数把传入的参数乘以3,返回结果:

示例

def myfunc(n):
  return lambda a : a * n

mytripler = myfunc(3)

print(mytripler(1))

也可以使用相同的函数定义把创建的两个函数放在同一个程序中:

示例

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)
mytripler = myfunc(3)

print(mydoubler(1)) 
print(mytripler(1))

lambda函数通常是在短时间内需要匿名函数时使用。



浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载