在 python 字典中找到重复次数最多的值

时间:2021-01-21 10:07:36

标签: python python-3.x

如何在字典中找到重复次数最多的值?例如:

[In] tree = {1:2,3:2,4:2,4:3}
[Out] 2

2 个答案:

答案 0 :(得分:2)

from collections import Counter 
tree = {1:2,3:2,4:2,4:3}
value, count = Counter(tree.values()).most_common(1)[0]
# 'value' is the most common value
# 'count' is how many times it appears 

答案 1 :(得分:0)

虽然使用内置库很好,但我们可以使用基本组件来实现

tree = {1:2,3:2,4:2,4:3,7:2}

d = {}

for k in tree.values():
    if(k in d):
        d[k] += 1
    else:
        d[k] = 1

max_val = None
k_of_max_val = None

for k in d:
    if(max_val != None):
        if(d[k] > max_val):
            k_of_max_val = k
            max_val = d[k]
    else:
        k_of_max_val = k
        max_val = d[k]

print(f'{k_of_max_val} occured maximum with {max_val} times')

输出

2 occured maximum with 3 times
相关问题