当前位置: 首页 > 面试题库 >

通过最大值获取字典键

长孙波鸿
2023-03-14
问题内容

这个问题已经在这里有了答案

获取字典中具有最大值的键? (25个答案)

4年前关闭。

我正在尝试获取dict键,其值是所有dict值的最大值。

我发现了两种方法,都不够优雅。

d= {'a':2,'b':5,'c':3}
# 1st way
print [k for k in d.keys() if d[k] == max(d.values())][0]
# 2nd way
print Counter(d).most_common(1)[0][0]

有没有更好的方法?


问题答案:

使用key参数可以max()

max(d, key=d.get)

演示:

>>> d= {'a':2,'b':5,'c':3}
>>> max(d, key=d.get)
'b'

key参数接受一个函数,对于可迭代的每个条目,它将找到该key函数为其返回最大值的那个条目。



 类似资料:
  • 问题内容: 我正在尝试在字典列表中获取具有最大值的字典的索引,如下所示: 使用以下代码,我可以采用最大大小: 现在如何获取其索引?有没有简单的方法? 测试: 我只是想我可以做到这一点: 这个对吗? 问题答案: 告诉如何计算索引序列的最大值: 这将返回键最高的索引: 如果您一直想要该词典,则可以使用: 并同时获取索引 和 字典,可以在这里使用: 更多演示: 该函数依次传递给输入序列中的每个元素,并将

  • 问题内容: 我有一个:键是字符串,值是整数。 例: 我想作为一个答案,因为它是具有更高价值的关键。 我使用带有反向键值元组的中间列表进行了以下操作: 那是一种更好(或更优雅)的方法吗? 问题答案: 您可以使用: 而不是在内存使用中构建新列表。该函数的参数是一个计算键的函数,该键用于确定如何对项目进行排名。 请注意,如果要使用另一个键值对,则此方法将仅返回两个值中的一个,即使它们都具有最大值。 如果

  • 问题内容: 我有一本这样的字典: 我想获得该字典的5个最大值,并以此存储一个新的字典。要获得最大值,我做了: 也许这是一项容易的任务,但是我坚持了很长时间。请帮忙!!! 问题答案: 你近了 您可以使用 [docs] 对列表进行 排序 ,并采用前五个元素: __ 另请参阅:Python排序方法

  • 问题内容: 我正在使用[UIImage:UIImage]类型的快速字典,并且正在尝试查找给定值的特定键。在Objective- C中,我可以使用allKeysForValue,但是Swift字典似乎没有这种方法。我应该使用什么? 问题答案: Swift 3:针对双射字典的特殊情况,性能更高 如果反向字典查找用例涵盖了在键和值之间具有一对一关系的双射字典,那么穷举收集操作的另一种方法是使用更快的短路

  • Python3 实例 以下实例中我们使用max()方法求最大值: 实例(Python 3.0+)# -*- coding: UTF-8 -*- # Filename : test.py # author by : www.runoob.com # 最简单的 print(max(1, 2)) print(max('a', 'b')) # 也可以对列表和元组使用 print(max([1,2])) p

  • 我对这个问题有意见。对于这个问题,我将编写一个与超类交互的子类。 某公司用多种方法编写了一个大类银行账户,包括: 方法/构造函数和描述: < Li > public BankingAccount(Startup s)使用Startup对象中的信息构造一个banking account对象 公共作废借方(借方d)记录给定的借方 公共无效信用(信用c)记录给定的信用 < li>public int g