亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

Python 匿名/Lambda 函数

Python 匿名/Lambda 函数

在本文中,您将了解匿名函数,也称为 lambda 函数。您将了解它们是什么、它们的语法以及如何使用它们(通过示例)。

视频:Python Lambda

什么是 Python 中的 lambda 函数?

在 Python 中,匿名函数是一个没有名字定义的函数。

而普通函数是使用 def 定义的 Python 中的关键字,匿名函数使用 lambda 定义 关键字。

因此,匿名函数也称为 lambda 函数。


如何在 Python 中使用 lambda 函数?

python 中的 lambda 函数具有以下语法。

python 中 Lambda 函数的语法

lambda arguments: expression

Lambda 函数可以有任意数量的参数,但只能有一个表达式。表达式被计算并返回。 Lambda 函数可用于任何需要函数对象的地方。


python中的Lambda函数示例

下面是一个将输入值加倍的 lambda 函数示例。

# Program to show the use of lambda functions
double = lambda x: x * 2

print(double(5))

输出

10

在上面的程序中,lambda x: x * 2 是 lambda 函数。这里 x 是参数和 x * 2 是被计算并返回的表达式。

这个函数没有名字。它返回一个分配给标识符 double 的函数对象 .我们现在可以将其称为普通函数。声明

double = lambda x: x * 2

几乎是一样的:

def double(x):
   return x * 2

在 python 中使用 Lambda 函数

当我们在短时间内需要一个无名函数时,我们会使用 lambda 函数。

在 Python 中,我们通常将它用作高阶函数(一个接受其他函数作为参数的函数)的参数。 Lambda 函数与 filter() 等内置函数一起使用 , map() 等等

filter() 的使用示例

filter() Python 中的 function 接受一个函数和一个列表作为参数。

使用列表中的所有项目调用该函数,并返回一个新列表,其中包含函数计算结果为 True 的项目 .

这是 filter() 的示例使用 函数只过滤掉列表中的偶数。

# Program to filter out only the even items from a list
my_list = [1, 5, 4, 6, 8, 11, 3, 12]

new_list = list(filter(lambda x: (x%2 == 0) , my_list))

print(new_list)

输出

[4, 6, 8, 12]

map() 的使用示例

map() Python 中的 function 接受一个函数和一个列表。

使用列表中的所有项目调用该函数,并返回一个新列表,其中包含该函数为每个项目返回的项目。

这是 map() 的示例使用 函数将列表中的所有项目加倍。

# Program to double each item in a list using map()

my_list = [1, 5, 4, 6, 8, 11, 3, 12]

new_list = list(map(lambda x: x * 2 , my_list))

print(new_list)

输出

[2, 10, 8, 12, 16, 22, 6, 24]

Python

  1. Python 数据类型
  2. Python 运算符
  3. Python pass 语句
  4. Python 函数参数
  5. 带有示例的 Python Lambda 函数
  6. Python abs() 函数:绝对值示例
  7. 带有示例的 Python round() 函数
  8. Python range() 函数:Float、List、For 循环示例
  9. 带有示例的 Python map() 函数
  10. Python 教程中的收益:生成器和收益与返回示例
  11. Python 中的 Enumerate() 函数:循环、元组、字符串(示例)
  12. Python time.sleep():为您的代码添加延迟(示例)