首页 > 开发 > Python > 正文

Python lambda表达式与匿名函数

2023-04-24 19:21:34
字体:
来源:转载
供稿:网友

匿名函数是指没有函数名称的函数。而Python中的lambda保留字可以用来定义一个匿名函数。

Python中的lambda可以用于需要函数对象的地方,可以帮助我们快捷的完成一定的运算。在lambda函数中可以传入多个参数,但只允许有一个表达式,该表达式被计算后并返回结果。

lambda函数的语法格式

[fun_obj =] lambda [parameter_list] : expression

位于[ ]中的内容是可选的。

lambda函数示例

下面这个例子用于计算一个数的平方数。

f = lambda x: x*x
s1 = f(2)
print("s1=",s1)
print("f(3)=",f(3))

输出结果如下:

s1= 4
f(3)= 9

实际上,上面这个程序中的lambda匿名函数相当于下面的程序:

def f(x):
    return x*x

lambda函数适用场景

过程计算不复杂;

函数只有一个表达式;

临时重复性的任务;

函数的作用域只限于当前模块或文件;

用于map(),filter()及reduce()函数的参数。

lambda函数用于map()函数的情景

map()函数使用一个函数和可迭代对象作为参数,并对可迭代对象的每个元素调用指定的函数来更新迭代序列。

lst = [1, 2, 3, 4, 5]
res_lst = map(lambda x : x *x, lst)
for e in res_lst:
    print(e, end=" ")

输出结果:

1 4 9 16 25 

以上讲解了Python中lambda匿名函数的语法及使用情况。lambda匿名函数在作为其它函数的参数时使用起来非常方便,在一次性使用场景中非常有用。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表