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的好处是让代码更简洁优雅。
假设你有一个函数,带一个参数,这个参数将与一个未知数相乘:
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函数通常是在短时间内需要匿名函数时使用。
← Python 函数
Python 类与对象 →