python - 在以列表为值的字典中查找键(Python)
问题描述
我有一本形式为:
my_dict = { "a" : ["Hey", 3] , "b" : ["Hello, 2], "c" : ["Heya", 8] }
(并且每个列表都具有相同的格式和“大小”)。我想找到具有每个列表第二列最小值的键。在这个例子中,基于整数值,所以我得到的键是“b”。我试着用 lambda 函数把它写成一个列表理解,但不能让它工作,所以我最终得到了这个:
min = 60 # with 60 being a logical maximum value
for key in my_dict:
if my_dict[key][1] < min:
min = wordDict[key][1]
min_key = key
min_key
有没有更高效、更“优雅”的方式?
解决方案
您可以key
在中使用自定义函数min
:
my_dict = { "a":["Hey", 3] , "b":["Hello", 2], "c":["Heya", 8] }
r = min(my_dict, key=lambda x:my_dict[x][-1])
输出:
'b'
推荐阅读
- javascript - 无法解析使用 Python/Django 创建的客户端 JSON 对象
- python - 蟒蛇/硒。列表未填满 IMDb href
- javascript - 来自 JSP 的值没有进入 javascript
- java - 无法安装 Spring Tool Suite 无法为 Eclipse Luna 安装
- r - 仅替换最后一次出现的正则表达式
- r - 如何删除在R中具有分类值的多个列?
- amazon-web-services - AMI 的 Cloud Custodian 过滤器键的 JMESPath 问题
- html - 我无法让我的 HTML 警报横幅出现在我的标题下
- python - 将熊猫系列分组到箱中
- python - 如何对具有每 n 行日期时间索引的数据帧执行操作