lambda 函数是一种小的匿名函数。
lambda 函数可接受任意数量的参数,但只能有一个表达式。
语法
lambda arguments : expression
执行表达式并返回结果:
实例
一个 lambda 函数,它把作为参数传入的数字加 10,然后打印结果:
x = lambda a : a + 10 print(x(5))
输出结果为:15,即a=5,a+10=15
lambda 函数可接受任意数量的参数:
实例
一个 lambda 函数,它把参数 a 与参数 b 相乘并打印结果:
x = lambda a, b : a * b print(x(5, 6))
输出结果为30,即a*b=5*6=30
实例
一个 lambda 函数,它把参数 a、b 和 c 相加并打印结果:
x = lambda a, b, c : a + b + c print(x(5, 6, 2))
输出结果为:13,即a+b+c=5+6+2=13
为何使用 Lambda 函数?
当您把 lambda 用作另一个函数内的匿名函数时,会更好地展现 lambda 的强大能力。
假设您有一个带一个参数的函数定义,并且该参数将乘以未知数字:
def myfunc(n): return lambda a : a * n
使用该函数定义来创建一个总是使所发送数字加倍的函数:
实例
def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) print(mydoubler(11))
输出结果为22,即a*n=11*2=22
或者,使用相同的函数定义来创建一个总是使您发送的数字增加三倍的函数:
实例
def myfunc(n): return lambda a : a * n mytripler = myfunc(3) print(mytripler(11))
输出结果为33,即a*n=11*3=33
或者,在同一程序中使用相同的函数定义来生成两个函数:
实例
def myfunc(n): return lambda a : a * n mydoubler = myfunc(2) mytripler = myfunc(3) print(mydoubler(11)) print(mytripler(11))
输出结果为22,33
如果在短时间内需要匿名函数,请使用 lambda 函数。
下一篇: 网络营销的核心六要素是什么?
上一篇:百度贴吧热议如何发布,如何做指定贴吧热议关键词排名
评论