Python 匿名函数(Lambda) 您所在的位置:网站首页 怎么定义函数python Python 匿名函数(Lambda)

Python 匿名函数(Lambda)

2024-07-12 16:29| 来源: 网络整理| 查看: 265

Python 全局,局部和非局部变量Python 递归(Recursion) Python 匿名函数(Lambda)

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

什么是Python中的lambda函数?

在Python中,匿名函数是没有定义名称的函数。

虽然def在Python中使用关键字定义了普通函数,但使用关键字定义了匿名函数lambda。

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

如何在Python中使用lambda函数?

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

python中Lambda函数的语法lambda arguments: expression

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

python中的Lambda函数示例

这是一个使输入值翻倍的lambda函数示例。

# 程序展示lambda函数的使用 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中,我们通常将其用作高阶函数的参数(该函数将其他函数作为arguments)。Lambda函数可以与filter(),map()等内置函数一起使用。

lambda与filter()一起使用的示例

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

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

这是使用filter()函数从列表中仅滤除偶数的示例。

# 程序从列表中过滤出偶数项 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]lambda与map()一起使用的示例

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

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

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

# 使用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 全局,局部和非局部变量Python 递归(Recursion)


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有