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)

相关推荐
半杯咖啡半行码8 分钟前
C++ 编程与 STL 模板:从泛型编程到内存安全详解
开发语言·c++
caoerzhong21 分钟前
JeeWMS 开源 WMS 部署避坑指南:Java 仓库管理系统的环境基线、四类根因与可复现交付
java·开发语言·开源
时间的拾荒人23 分钟前
Qt 界面优化:绘图详解 —— 从基础图形到图片处理
开发语言·qt·面试
用户83562907805134 分钟前
使用 Python 对 Excel 工作表进行排序
后端·python
MayZork41 分钟前
Qt 文件操作:QSaveFile 与 QTemporaryFile(含 QTemporaryDir)实战
开发语言·qt
北冥you鱼1 小时前
Go 语言空接口(interface{})使用场景与最佳实践
开发语言·windows·golang
for_ever_love__1 小时前
MySQL 全文索引实战:FULLTEXT、ngram 中文分词与 MATCH AGAINST 到底该怎么用
java·python·mysql·全文检索·分词·索引·ngram
用户8356290780511 小时前
使用 Python 合并 PowerPoint 演示文稿
后端·python
xh didida1 小时前
Linux -- 基础IO
linux·服务器·开发语言·c++
weixin_461769401 小时前
VS Code 中创建 Jupyter 文件(.ipynb)
ide·python·jupyter