📅  最后修改于: 2023-12-03 15:24:19.580000             🧑  作者: Mango
Lambda 函数也称为匿名函数,是一种Python中的快捷方式,使得我们可以在不定义具名函数的情况下编写简短的代码。lambda函数通常用于函数中需要函数作为参数的时候,例如map,reduce,和filter等高阶函数。
lambda 函数的基本语法为:
lambda arguments: expression
这里 arguments
是函数的参数,expression
是计算该函数返回值的表达式。
下面是一个简单的例子:
# 将一个参数加倍
multiply = lambda x: x * 2
print(multiply(5)) # 输出 10
在高阶函数中,我们通常需要使用一个函数作为参数,这时候就可以使用 lambda 函数来代替定义具名函数。
下面是一个使用 lambda 函数的例子,我们在一个 list 中选择所有偶数:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # 输出 [2, 4, 6, 8, 10]
在这个例子中,我们使用了内置函数 filter
来对 numbers
列表中的元素进行筛选。filter
函数的第一个参数是一个函数,用来判断列表每个元素是否应该被包含在结果列表中。在这里我们使用了一个 lambda 函数,判断列表元素是否为偶数。
下面是另外一个例子,我们使用 lambda 函数将一个列表中的元素平方:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
squared_numbers = list(map(lambda x: x ** 2, numbers))
print(squared_numbers) # 输出 [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
这里我们使用了内置函数 map
,用来对列表中的每个元素应用一个函数。map
函数的第一个参数也是一个函数,用来转换列表中的每个元素。我们也使用了一个 lambda 函数,将列表中的每个元素平方。
Lambda 函数是一种Python中的快捷方式,用于定义简短的函数。我们可以将 lambda 函数作为参数传递给高阶函数,从而使我们的代码更加简洁。