在重复值的情况下,查找字典中最大键的最大值的键

sep*_*tir 3 python dictionary max

在Python中我想找到具有重复项的字典中的最大值,例如:

my_dict = {1: 0, 12: 2, 36: 2, 24: 2, 33: 2, 4: 1}
Run Code Online (Sandbox Code Playgroud)

最大值是2.

我想找到36:2这个例子中最大值的最大值.

tim*_*geb 6

您可以将dict的项目输入max内置函数.

>>> max(my_dict.items(), key=lambda t: (t[1], t[0]))
(36, 2)
Run Code Online (Sandbox Code Playgroud)

键函数指定应首先考虑值(项的第二个元素).如果在比较两个(键,值)对期间值相同,则检查键(项的第一个元素).

编辑:

或者,也许有点光滑:

>>> max(my_dict.items(), key=lambda t: t[::-1])
(36, 2)
Run Code Online (Sandbox Code Playgroud)