Python 中使用 lambda 关键字声明匿名函数的详细介绍及示例

Python 允许我们不采用标准方式声明函数 也就是不使用 def 关键字 而是用 lambda 关键字声明匿名函数 不过 Lambda 函数能接受任意数量的参数 但它们只能以表达式形式返回一个值

Python 中使用 lambda 关键字声明匿名函数的详细介绍及示例

匿名函数含有一小段代码。它对C和C ++的内联函数进行模拟。但它并非完全等同于内联函数。

下面给出了定义匿名函数的语法。

lambda arguments : expression

例1

x等于一个匿名函数,该匿名函数接受参数a,返回a加10的结果,其中a是参数,a加10是一个经过求值后返回的表达式。
print("sum = ",x(20))

输出:

sum= 30

例2

Lambda函数的多个参数

x等于一个匿名函数,该匿名函数接受a和b作为参数,对a与b求和的表达式进行求值并返回结果。
print("sum = ",x(20,10))

输出:

Sum = 30

为什么要使用lambda函数?

当我们在另一个函数里匿名使用lambda函数时,能更好地描述lambda函数的主要作用。在python中,lambda函数可用作高阶函数的参数。Lambda函数也用于我们所需的场景,考虑以下示例。

例1

函数table(n)用于打印n的表格
def table(n):
返回一个匿名函数,该匿名函数接受参数a并返回a乘以n的结果;a将包含迭代变量i,并且每次函数调用时返回n的倍数
n等于输入函数的返回值,输入内容为“Enter the number?” ,输入函数的参数为字符串类型的“Enter the number?” ,函数返回值转换为整数类型后赋值给n
b等于调用函数table并传入n。传入的数字被传递到函数table中。b将包含一个lambda函数。该lambda函数会使用迭代变量i反复调用。
for i in range(1,11):
打印(n,"X",i,"=",b(i)); #使用迭代变量i调用lambda函数b

输出:

Enter the number??10
10 X 1 = 10
10 X 2 = 20
10 X 3 = 30
10 X 4 = 40
10 X 5 = 50
10 X 6 = 60
10 X 7 = 70
10 X 8 = 80
10 X 9 = 90
10 X 10 = 100

例2

使用lambda函数与过滤器

包含奇数的列表
List = {1,2,3,4,10,123,22}
Oddlist等于通过filter函数过滤List得到的列表,filter函数使用lambda函数进行筛选,lambda函数用于判断元素是否能被3整除,能被3整除的元素组成新列表,即Oddlist包含所有使lambda函数求值为真的List中的项
print(Oddlist)

输出:

[3,123]

例3

使用lambda函数与map

编写程序,使用map函数将列表中的每个数字乘以三。
List = {1,2,3,4,10,123,22}
新列表 = 列表(将列表中的每个元素映射到一个函数,该函数将元素乘以3)# 这会返回列表中每个元素的三倍并将其添加到新列表中
print(new_list)

输出:

[3,6,9,12,30,66,369]

你可能想看:
« 上一篇
下一篇 »

相关推荐

python爬虫教程PDF,Python爬虫书PDF

2026年09月02日

32阅读

外国教程python,python编程教学视频

2026年09月02日

27阅读

python简明教程沈洁元,python详细基础教程

2026年09月02日

21阅读

python库包教程,python 包

2026年09月02日

27阅读

python教程大全集,python教程600集

2026年09月02日

27阅读

python入门教程完整版,python零基础入门全套教程视频

2026年09月02日

23阅读