Python中的lambda表达式

这是一个表达式,更确切的说是函数,是一个一行函数,又称匿名函数,有些语言里称闭包。其语法结构如下:
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)

相关推荐
qq_3729069319 小时前
Python最短路径怎么求_Dijkstra算法与优先队列结合
jvm·数据库·python
qq_3300379919 小时前
如何查看集群版本_crsctl query crs activeversion当前版本
jvm·数据库·python
小松加哲19 小时前
AspectJ编译期织入实战
java·开发语言
鲸渔19 小时前
【C++ 跳转语句】break、continue、goto 与 return
开发语言·c++·算法
深度学习lover19 小时前
<数据集>yolo 焊接缺陷识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·焊接缺陷检测
贺小涛19 小时前
python和golang进程、线程、协程区别
java·python·golang
214396519 小时前
golang如何使用expvar暴露运行时指标_golang expvar运行时指标暴露步骤
jvm·数据库·python
喜欢吃燃面19 小时前
Linux 进程信号深度解析:从概念到产生机制
linux·开发语言·学习
weixin_4249993619 小时前
如何用SQL按条件计算移动求和_结合CASE与窗口函数
jvm·数据库·python
AI玫瑰助手19 小时前
Python基础:字符串的常用内置方法(查找替换分割)
android·开发语言·python