栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 面试经验 > 面试问答

获取字典列表的最大值索引

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

获取字典列表的最大值索引

告诉

max()
如何计算索引序列的最大值:

max(range(len(ld)), key=lambda index: ld[index]['size'])

这将返回

size
键最高的索引:

>>> ld = [{'prop': 'foo', 'size': 100}, {'prop': 'boo', 'size': 200}]>>> max(range(len(ld)), key=lambda index: ld[index]['size'])1>>> ld[1]{'size': 200, 'prop': 'boo'}

如果您一直想要该词典,则可以使用:

max(ld, key=lambda d: d['size'])

并同时获取索引 字典,可以

enumerate()
在这里使用:

max(enumerate(ld), key=lambda item: item[1]['size'])

更多演示:

>>> max(ld, key=lambda d: d['size']){'size': 200, 'prop': 'boo'}>>> max(enumerate(ld), key=lambda item: item[1]['size'])(1, {'size': 200, 'prop': 'boo'})

key
函数依次传递给输入序列中的每个元素,
max()
并将选择该
key
函数的返回值最高的元素。

使用单独的列表提取所有

size
值,然后将其映射回原始列表不是很有效(您现在需要遍历列表两次)。
list.index()
无法工作,因为它必须匹配整个字典,而不仅仅是其中一个值。



转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/640167.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号