如何解决如何返回 Python 字典中的两个最低值?
我需要在我的字典中找到两个最小值。我不能使用 lambda。我可以使用列表,min()。
我不能使用 min() 之外的任何函数。我可以在列表上使用 .sort ,但这意味着将我的字典值转换为列表。我该怎么做?
解决方法
如果您只需要前 2 个最小值,请尝试此操作。
>>> dict = {'A' : 11,'B' : 2,'C' : 11,'D':8,'E':1}
>>> sorted(dict.values())[:2]
[1,2]
>>>
如果您需要前 2 分钟的值及其键,请尝试此操作。
>>> sorted(dict.items(),key=lambda x:x[1])[:2]
[('E',1),('B',2)]
>>>
,
1.试试这个代码,它会帮助你返回具有最小值的键
test_dict = {'A' : 11,'E':2}
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
# Using min() + list comprehension + values()
temp = min(test_dict.values())
res = [key for key in test_dict if test_dict[key] == temp]
# printing result
print("Keys with minimum values are : " + str(res))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。