Python - 字典:如何找出具有最高 int 值的键 is/are
Python - Dicts: how to find out what the key(s) with the highest int as value is/are
在字典中,我想找到所有具有最高值的键,所以在这个例子中不仅键'D',而且键'B'。我该怎么做(以最有效的方式)?
some_dict = {
'A': 2,
'B': 18,
'C': 7,
'D': 18
}
highest_keys(some_dict)
# Result should be: ['B', 'D'] or {'B': 18, 'D': 18}, both options would work
max 只给出最后一个具有最高值的键,但我需要全部。
先感谢您! :)
这应该有效
sorted_keys = sorted(some_dict,key=lambda x:some_dict[x], reverse=True)
highest_value = some_dict[sorted_keys[0]]
for key in sorted_keys:
value = some_dict[key]
if value != highest_value:
break
else:
print(key)
some_dict = {
'A': 2,
'B': 8,
'C': 17,
'D': 8
}
print(dict(max(some_dict.items(), key=lambda x: x[1])))
这个key
正在检查最大值,然后将其转换回dict
您可能会找到最大值,然后检索密钥:
highval = max(somedict.values())
[k for k in somedict if somedict[k] == highval]
在字典中,我想找到所有具有最高值的键,所以在这个例子中不仅键'D',而且键'B'。我该怎么做(以最有效的方式)?
some_dict = {
'A': 2,
'B': 18,
'C': 7,
'D': 18
}
highest_keys(some_dict)
# Result should be: ['B', 'D'] or {'B': 18, 'D': 18}, both options would work
max 只给出最后一个具有最高值的键,但我需要全部。 先感谢您! :)
这应该有效
sorted_keys = sorted(some_dict,key=lambda x:some_dict[x], reverse=True)
highest_value = some_dict[sorted_keys[0]]
for key in sorted_keys:
value = some_dict[key]
if value != highest_value:
break
else:
print(key)
some_dict = {
'A': 2,
'B': 8,
'C': 17,
'D': 8
}
print(dict(max(some_dict.items(), key=lambda x: x[1])))
这个key
正在检查最大值,然后将其转换回dict
您可能会找到最大值,然后检索密钥:
highval = max(somedict.values())
[k for k in somedict if somedict[k] == highval]