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)

相关推荐
~无忧花开~2 分钟前
Vue二级弹窗关闭错误解决指南
开发语言·前端·javascript·vue.js
老华带你飞6 分钟前
在线教育|基于springboot + vue在线教育系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
REDcker40 分钟前
JS 与 C++ 语言绑定技术详解
开发语言·javascript·c++
June`40 分钟前
C++11新特性全面解析(三):智能指针与死锁
开发语言·c++
认真敲代码的小火龙43 分钟前
【JAVA项目】基于JAVA的医院管理系统
java·开发语言·课程设计
_一路向北_1 小时前
爬虫框架:Feapder使用心得
爬虫·python
皇族崛起1 小时前
【3D标注】- Unreal Engine 5.7 与 Python 交互基础
python·3d·ue5
你想知道什么?2 小时前
Python基础篇(上) 学习笔记
笔记·python·学习
曼巴UE52 小时前
UE5 C++ 动态多播
java·开发语言
steins_甲乙2 小时前
C++并发编程(3)——资源竞争下的安全栈
开发语言·c++·安全