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)

相关推荐
smchaopiao1 分钟前
Python数据库操作:SQLAlchemy ORM指南
jvm·数据库·python
两个人的幸福online1 分钟前
php开发者 需要 协程吗
android·开发语言·php
Eward-an13 分钟前
LeetCode 76. 最小覆盖子串(详细技术解析)
python·算法·leetcode·职场和发展
guygg8816 分钟前
基于ADMM的MRI-PET高质量图像重建算法MATLAB实现
开发语言·算法·matlab
小小程序员mono16 分钟前
JS 与 Vue Router 导航方式对比
开发语言·javascript·vue.js
李昊哲小课19 分钟前
Python itertools模块详细教程
数据结构·python·散列表
feifeigo12319 分钟前
基于MATLAB的V-BLAST结构BER仿真
开发语言·matlab
lly20240627 分钟前
Perl 数据库连接
开发语言
小白-Tester28 分钟前
2026最新Postman安装教程[简单易懂]附安装包
开发语言·lua