在Python中,lambda
函数是一种小型、匿名的、内联函数,它可以具有任意数量的参数,但只能有一个表达式¹。lambda
函数通常用于编写简单的、单行的函数,通常在需要函数作为参数传递的情况下使用,例如在map()
、filter()
、reduce()
等函数中¹。
以下是一些lambda
函数的示例:
- 无参数的
lambda
函数:
f = lambda: "Hello, world!"
print(f()) # 输出结果为:Hello, world!
- 单参数的
lambda
函数:
x = lambda a : a + 10
print(x(5)) # 输出结果为:15
- 多参数的
lambda
函数:
x = lambda a, b : a * b
print(x(5, 6)) # 输出结果为:30
lambda
函数与内置函数的结合使用:
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x**2, numbers))
print(squared) # 输出结果为:[1, 4, 9, 16, 25]
以上代码中,lambda
函数被用作map()
函数的参数,用于计算列表中每个元素的平方¹。
如果你想要在lambda
函数中调用其他函数,你可以这样做。例如,假设我们有一个函数add_two_numbers(a, b)
,我们可以在lambda
函数中调用它,如下所示:
def add_two_numbers(a, b):
return a + b
f = lambda x, y: add_two_numbers(x, y)
print(f(5, 3)) # 输出结果为:8
在这个例子中,lambda
函数f
接受两个参数x
和y
,并将它们传递给add_two_numbers
函数。然后,add_two_numbers
函数的返回值就成为了lambda
函数的返回值。¹
源: 与必应的对话, 2023/11/15
(1) Python lambda(匿名函数) | 菜鸟教程. https://www.runoob.com/python3/python-lambda.html.
(2) Python之lambda函数:用法与实例 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/134024110.
(3) Python函数的调用及参数传递 lambda - 知乎 - 知乎专栏. https://bing.com/search?q=python+lambda函数调用函数.
(4) Python 匿名函数(Lambda) - 菜鸟教程. https://www.cainiaojc.com/python/python-anonymous-function.html.
(5) 在Python中使用Lambda函数的5种用法 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/356602696.