Python|计算字典中具有特定值的键
有时,在使用Python字典时,我们可能会遇到一个问题,其中我们有一个特定的值,如果它出现,我们需要找到它的频率。让我们讨论一些可以解决这个问题的方法。
方法#1:使用循环
这个问题可以使用简单的循环方法来解决。在这种情况下,我们只需遍历字典中的每个键,当找到匹配项时,计数器就会增加。
# Python3 code to demonstrate working of
# Count keys with particular value in dictionary
# Using loop
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 2, 'CS' : 2}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize value
K = 2
# Using loop
# Selective key values in dictionary
res = 0
for key in test_dict:
if test_dict[key] == K:
res = res + 1
# printing result
print("Frequency of K is : " + str(res))
输出 :
The original dictionary : {‘gfg’: 1, ‘CS’: 2, ‘best’: 3, ‘for’: 2, ‘is’: 2}
Frequency of K is : 3
方法 #2:使用sum() + values()
这也可以使用sum() and value()
的组合来解决。在此, sum 用于执行过滤值的求和,并使用values()
提取字典的值
# Python3 code to demonstrate working of
# Count keys with particular value in dictionary
# Using sum() + values()
# Initialize dictionary
test_dict = {'gfg' : 1, 'is' : 2, 'best' : 3, 'for' : 2, 'CS' : 2}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Initialize value
K = 2
# Using sum() + values()
# Selective key values in dictionary
res = sum(x == K for x in test_dict.values())
# printing result
print("Frequency of K is : " + str(res))
输出 :
The original dictionary : {‘gfg’: 1, ‘CS’: 2, ‘best’: 3, ‘for’: 2, ‘is’: 2}
Frequency of K is : 3