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 小时前
【油猴脚本】Boss直聘 岗位职责复制
开发语言·前端·javascript
starzy19908 小时前
深入理解Scala Map:从实现原理到工程实践
开发语言·后端·scala
只睡四小时9 小时前
Three.js Sub-tick:漏判 60.7%→0
开发语言·javascript·性能优化·ecmascript·游戏开发·three.js·碰撞检测
码农小河669 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库
东鹏特饮11 小时前
系统运维(传统/通用运维)面试题
开发语言·php
今天要早睡_12 小时前
C++01_入门基础复习
开发语言·c++
黑马程序员毕设13 小时前
基于 Java 的餐饮点餐系统设计与应用报告
java·开发语言
1-1=014 小时前
C# 委托与事件
开发语言·c#
Fuyo_111914 小时前
C++ 运行时多态与虚函数机制全面剖析【面试重点】
开发语言·c++·面试
武天旭15 小时前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习