Python - 字典中过滤键的最大值
有时在使用Python字典时,我们可能会遇到一个问题,即我们需要最大化字典中的选择性键值。此问题可能发生在 Web 开发领域。让我们讨论一些可以解决这个问题的方法。
方法 #1:使用列表理解 + get() + max()
上述功能的组合可用于执行此特定任务。在此,我们使用 get 方法访问值并使用列表推导遍历字典。我们使用 max() 执行最大值。
# Python3 code to demonstrate working of
# Maximum of filtered Keys
# Using list comprehension + get() + max()
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 4, 'CS' : 5}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize key list
key_list = ['gfg', 'best', 'CS']
# Using list comprehension + get() + max()
# Maximum of filtered Keys
res = max([test_dict.get(key) for key in key_list])
# printing result
print("The maximum of Selective keys : " + str(res))
输出 :
The original dictionary : {'for': 4, 'gfg': 1, 'is': 2, 'best': 3, 'CS': 5}
The maximum of Selective keys : 5
方法#2:使用itemgetter() + max()
这个单一的函数可以用来执行这个特定的任务。它内置执行此特定任务。它接受键链并将相应的值作为可以进行类型转换的元组返回。我们使用 max() 执行最大值。
# Python3 code to demonstrate working of
# Maximum of filtered Keys
# Using itemgetter() + max()
from operator import itemgetter
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 4, 'CS' : 5}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize key list
key_list = ['gfg', 'best', 'CS']
# Using itemgetter() + max()
# Maximum of filtered Keys
res = max(list(itemgetter(*key_list)(test_dict)))
# printing result
print("The maximum of Selective keys : " + str(res))
输出 :
The original dictionary : {'for': 4, 'gfg': 1, 'is': 2, 'best': 3, 'CS': 5}
The maximum of Selective keys : 5