python - 如何从嵌套列表中提取具有最低整数值的子列表?
问题描述
如果我有一个嵌套列表如下:
foods = [['Category', 'Carbs', 'Calories'], ['SWEET POTATO', '23.4', '100'], ['TOMATOES', '5.1', '23'], ['BEETS', '16.28', '65'], ['LETTUCE', '2.23', '13']]
我想找到并打印卡路里数最低的子列表。我尝试了以下方法:
lowcal = foods[0]
for x in foods:
if x[2] < lowcal[2]:
lowcal = x
else:
continue
print (lowcal)
但我得到了错误的输出,我得到:`['SWEET POTATO', '23.4', '100']
当我应该得到:['LETTUCE','2.23','13']
解决方案
您可以min()
在列表中使用key
第三个元素:
min([x for x in foods[1:]], key=lambda x: int(x[2]))
推荐阅读
- java - 尤里卡/发现服务与路线
- javascript - 如何触发主干keyup事件
- java - Spring AOP - 我想将切入点应用到库中的类
- python - 如何将 os 命令输出保存在文本文件中?
- ios - AVFoundation 照片输出比 Swift 中的预览更亮
- asp.net-mvc - IIS 上的 asp net web 核心:站点无法访问
- javascript - Angularjs - 如何为数据模型实现 getter 和 setter?
- mysql - 谷歌云 SQL - 100% 的 CPU
- templates - 掌舵迭代范围
- mysql - 从数据库中获取上一条和下一条记录并循环它们