使用 min 从字典中获取最低键和值 [重复]

Posted

技术标签:

【中文标题】使用 min 从字典中获取最低键和值 [重复]【英文标题】:Using min to get lowest key and value from dictionary [duplicate] 【发布时间】:2017-09-19 11:40:09 【问题描述】:

字典:

d = u'A': 240, u'B': 242, u'C': 243

我已经成功地使用以下代码识别了最低键:

min_ = min(d, key=d.get)

输出:

A

我想让输出也包含该值:

A, 240


注意

如果可能,我想避免使用lambda

【问题讨论】:

d[min_] 给你价值 你有一个dict。你有一个键,你想要一个值。我想你可以把这些点联系起来。 或者,min(d.items(), key=operator.itemgetter(1)) 如果可能,我想避免使用 lambda。请不要在没有至少解释原因的情况下设置任意限制。 为什么 lambda 是不可接受的? 【参考方案1】:

min 应用于字典items 然后:

from operator import itemgetter

min(d.items(), key=itemgetter(1))

我使用operator.itemgetter() callable 从每个(key, value) 对中检索value,但您也可以使用lambda pair: pair[1]。后者会稍微慢一些,因为它涉及退回到 Python 调用框架。

演示:

>>> from operator import itemgetter
>>> d = u'A': 240, u'B': 242, u'C': 243
>>> min(d.items(), key=itemgetter(1))
(u'A', 240)

【讨论】:

太棒了,谢谢!有没有一种简单的方法可以删除“不必要的字符”,即“(u')”,所以我只剩下A, 240 @LearningToPython:你正在回显或打印一个元组,所以使用repr();元组并不意味着最终用户友好,它们只有调试友好的表示。如果要将其格式化为其他内容,请使用字符串格式化。 ', '.format(*result) 将按照您想要的方式对其进行格式化(将两个值放入带有逗号和空格的字符串中)。 谢谢 - 我发现我可以做到 x[0]x[1] 给了我结果

以上是关于使用 min 从字典中获取最低键和值 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何从一系列字典中创建键和值的数据框[重复]

枚举字典迭代键和值[重复]

如何在 Django 模板中获取字典键和值?

获取以索引为导向的嵌套字典中的键和值列表

从python字典如何将键和值保存到* .txt文件[关闭]

使用 for loop .splitlines 循环将键和值添加到字典