Python中的lambda表达式

2023-12-16 19:54:07

这是一个表达式,更确切的说是函数,是一个一行函数,又称匿名函数,有些语言里称闭包。其语法结构如下:

lambda? 传入参数 : 返回的计算表达式
?

lambda表达式冒号前为传入参数列表(可多个),冒号为计算表达式,通常只能跟一个表达式,可以使用if结构,如下所示。

?f = lambda x, y : x if x > y else y
?f(2, 3)

?

lambda表达式可以嵌套,即lambda冒号后的语句也是一个lambda表达式。

取二维列表每行最大值

li = []
li.append([11, 2, 4, 3])
li.append([12,22, 14, 30])
li.append([1, 12, 41, 34])
print (li)
f = lambda x : lambda y : max(y[x])
print (f(0)(li))
print (f(1)(li))
print (f(2)(li))
lmax = [f(i)(li) for i in range(3)]
print (lmax)

程序执行结果:

[[11, 2, 4, 3], [12, 22, 14, 30], [1, 12, 41, 34]]
11
30
41
[11, 30, 41]

?

文末福利:(人工智能的本质与未来)

https://url12.ctfile.com/f/49054212-987754699-fa580b?p=2265 (访问密码: 2265)

文章来源:https://blog.csdn.net/zhao_god/article/details/134946131
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。