这给出了字典中的最大值,但是我如何获得最大值的字典键?
max([d[i] for i in d])
max(d, key=lambda k: d[k])
您也可以使用 lambda 代替operators.itemgetter
:
import operators
max(d, key=operators.itemgetter(d))
或传入d.get
:
max(d, key=d.get)
假设在这种情况下使用 == 进行比较是安全的,这可能并不总是正确的,例如使用浮点数。
d = { 'a' : 2, 'b' : 2, 'c' : 1}
max_val = max(d.values())
max_keys = [k for k, v in d.items() if v == max_val]
print(max_keys)
给,
['a', 'b']
[Program finished]