📜  Python|具有最大值的键

📅  最后修改于: 2022-05-13 01:55:04.114000             🧑  作者: Mango

Python|具有最大值的键

很多时候,我们可能会遇到问题,我们不仅需要找到值,还需要找到整个字典中最大值的对应键。让我们讨论可以执行此任务的某些方式。

方法 #1:使用max() + list comprehension + values()
上述功能的组合可用于执行此特定任务。其中,最大值是使用 max函数提取的,而字典的值是使用 values() 提取的。列表推导用于遍历字典以匹配具有最大值的键。

# Python3 code to demonstrate working of
# Keys with Maximum value
# Using max() + list comprehension + values()
  
# initializing dictionary
test_dict = {'Gfg' : 2, 'for' : 1, 'CS' : 2}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# Using max() + list comprehension + values()
# Keys with Maximum value
temp = max(test_dict.values())
res = [key for key in test_dict if test_dict[key] == temp]
  
# printing result 
print("Keys with maximum values are : " + str(res))
输出 :
The original dictionary is : {'CS': 2, 'Gfg': 2, 'for': 1}
Keys with maximum values are : ['CS', 'Gfg']

方法 #2:使用all() + 列表推导
也可以使用列表推导和所有函数来执行此任务。在此,我们使用所有小于键值的函数获取所有元素值,并使用列表推导返回具有最大值的键。

# Python3 code to demonstrate working of
# Keys with Maximum value
# Using all() + list comprehension
  
# initializing dictionary
test_dict = {'Gfg' : 2, 'for' : 1, 'CS' : 2}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# Using all() + list comprehension
# Keys with Maximum value
res = [key for key in test_dict if all(test_dict[temp] <= test_dict[key] for temp in test_dict)]
  
# printing result 
print("Keys with maximum values are : " + str(res))
输出 :
The original dictionary is : {'CS': 2, 'Gfg': 2, 'for': 1}
Keys with maximum values are : ['CS', 'Gfg']