繁体   English   中英

字典中的最大键值

[英]Maximum key value from dictionary

我有一个带有值的python字典

d = {'A': 0, 'B': 1, 'C': 0, 'D': 4}

result = max(d.iteritems(), key=lambda x: x[1])

result = ('D', 4)

现在,如果没有最大值且所有值都相等,则结果应按键的字母顺序(升序)。

 d = {'A': 0, 'B': 1, 'C': 0, 'D': 1}
 result should be  D

 d = {'A': 0, 'B': 5, 'C': 5, 'D': 1}
 result should be C

如何在Python中完成此操作?

调整lambda以检查值后的键(通过返回一个值键对)

>>> d = {'A': 0, 'B': 1, 'C': 0, 'D': 1}
>>> max(d.iteritems(), key=lambda x: (x[1], x[0]))
('D', 1)
>>> d = {'A': 0, 'B': 5, 'C': 5, 'D': 1}
>>> max(d.iteritems(), key=lambda x: (x[1], x[0]))
('C', 5)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM