返回最小值的键[重复]

Posted

技术标签:

【中文标题】返回最小值的键[重复]【英文标题】:return key of minimum value [duplicate] 【发布时间】:2020-05-24 19:10:15 【问题描述】:

我想在 Python 中返回 dictionary 中最小值的键。键值对的值会有几个数字,即dict[current] = (total, gone, heuristic)。如何返回最小消失值的键?

【问题讨论】:

这能回答你的问题吗? Get the key corresponding to the minimum value within a dictionary 【参考方案1】:

min 与 lambda 查找函数一起使用:

min(d, key=lambda k: d[k][1])

【讨论】:

我们可以在这里使用itemgetter吗?【参考方案2】:

简单地说,遍历字典:

d = 1: (1,2,3), 2: (2,4,5), 4: (5,0,2)
best = None
mn = 99999999 # if you have values more than this, then use float('inf') instead
for k in d:
    if mn > d[k][1]:
        mn = d[k][1]
        best = k 
print(best)
# Output: 4

【讨论】:

【参考方案3】:

你可以遍历字典

best = None
for key, t in d.items():
    if best is None or t1] < d[best][1]:
        best = key
return best

【讨论】:

认为应该是tuple[1] &lt; dict[best] @Stuart 是的,你是对的!谢谢 dict, tuple 是关键字,请改用dt

以上是关于返回最小值的键[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Python:从字典中获取具有最小值但有多个最小值的键

获取字典最小值的键,而该键在数组中

在包含“无”/“假”值的字典上获取具有最小值的键

以下算法在未排序数组中找到最小值的复杂性

使用numpy选择排除某些索引的数组中最小值的索引

在字典中查找最小值[重复]