如何在Python中使用Lambda函数?

如何在Python中使用Lambda函数?

Python Lambda函数匿名,没有名称。我们已经熟悉了使用def关键字定义标准Python函数。类似于此,lambda关键字用于在Python中声明匿名函数。

更多Python相关文章,请阅读:Python 教程

语法

在Python中,lambda表达式的语法如下:

lambda参数: 表达式

无论参数个数如何,此函数仅评估并返回一个表达式。

Lambda函数可在需要函数对象的任何位置使用。

必须始终记住Lambda函数在语法上限制为单个表达式。除了函数中的其他种类的表达式外,在编程的某些领域中具有多种用途。它们即时返回函数的定义。

Lambda函数不包含返回语句,它们始终返回表达式。您可以在期望函数的任何位置放置λ定义。假设我们有一个仅使用一次并从仅一个位置调用的函数,然后我们可以使用lambda函数。因此,您无需为其命名,而可以在那里定义功能。因此,我们消除了使用函数并使用Lambda表达式。

示例1

让我们看一个lambda函数的例子。

# Python program to demonstrate lambda functions
x ="HelloWorld"
# lambda gets pass to print
(lambda x : print(x))(x)

输出

获取以下输出。

HelloWorld

示例2

让我们看一个使用λ函数添加数字的示例。在下面的例子中,我们将一个int值作为单个参数传递给λ函数,该函数将100添加到给定数字中。

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

输出

获取以下输出。

105

示例3

如上例所示,我们将单个参数作为输入给lambda函数,我们也可以给出多个参数作为输入。看一个具有多个参数的例子。

x = lambda a, b : a * b
print(x(9, 1))

输出

获取以下输出。

9

示例4

让我们看一个用于列表推导的λ函数。

列表(Lists) 用于在单个变量中存储多个项目。用于在Python中存储数据集合的四种内置数据类型之一是列表(list);其他三个是元组(tuple)、集合(set)和字典(dictionary),每个都有其独特的用途。当您希望基于现有列表的值创建新列表时, 列表推导 提供了更简洁的语法。

tables = [lambda x=x: x*10 for x in range(1, 11)]

for table in tables:
   print(table())

输出

得到以下输出。

10
20
30
40
50
60
70
80
90
100

例 5

虽然 lambda 函数不允许多个语句,但我们可以创建两个 lambda 函数,然后调用其中一个作为另一个参数。 让我们使用 lambda 查找第二大的元素。

List = [[4,3,4],[9, 4, 16, 64],[3, 6, 9, 12]]
#Sorting sublist
sortList = lambda x: (sorted(i) for i in x)
# Get the second largest element
secondLargest = lambda x, f : [y[len(y)-2] for y in f(x)]
result = secondLargest(List, sortList)
print(result)

输出

输出如下所示。

[4, 16, 9]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程