大家好,又见面了,我是你们的朋友全栈君。
本文转自https://www.freeaihub.com/article/lambda-in-python.html,该页可在线互动学习匿名函数
在本示例中,我们将看到如何在Python中使用Lambda函数。您将了解它的含义,语法以及如何使用它。
Python匿名或lambda函数是没有名称定义的函数。虽然标准函数是使用def关键字定义的,但在Python中,匿名函数是使用lambda关键字定义的。
Python Lambda函数
python中的lambda函数具有以下语法。
lambda arguments: expression
Lambda函数可以具有任意数量的参数,但只能有一个表达式。该表达式将被求值并返回。Lambda函数可在需要函数对象的任何地方使用。
让我们看下面的例子。
square = lambda x: x * x
print(square(5))
它的行为类似于普通函数并提供输出。
在上面的程序中,lambda x:x * x是lambda函数。这里 X 是参数和 X * X是被评估,返回的表达。
Lambda函数没有名称。它返回分配给标识符double的功能对象。我们现在可以称其为正常功能。声明如下,
square = lambda x: x * x
与上方的定义相同的效果
def square(x):
return x * x
在Python中,我们通常使用Lambda函数作为高阶函数的参数,该函数以其他函数作为参数。匿名函数与内置函数(如 filter(), map() 等)一起使用。
带filter()的Lambda函数高阶函数
让我们以带有高阶函数的Lambda函数为例。
integers = range(1, 10)
even = list(filter(lambda x: x % 2 == 0, integers))
print(even)
在第一行中,我们定义了整数列表,然后使用了 过滤器的高阶方法并传递了lambda函数,该函数一个接一个地列出列表的参数,然后过滤掉数据,然后返回包含过滤数据的列表。
带map()的Lambda函数高阶函数
Python中的 map()函数接受该函数和一个列表。
调用Lambda函数并将其包含在列表中的所有项目中,并返回一个新列表,其中包含该函数为每个项目返回的项目。
这是使用map() 函数对列表中所有整数项求平方的示例 。
integersList = range(1, 6)
squares = list(map(lambda x: x * x, integersList))
print(squares)
上面的代码从integersList中 获取每个整数, 然后将所有项目一一平方,然后创建一个列表,然后返回该平方的项目列表。因此,它已将列表映射到平方列表。
最后,Python Lambda匿名函数教程结束了。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/155902.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...