【发布时间】:2021-04-25 17:42:41
【问题描述】:
如何在字典中找到重复次数最多的值?例如:
[In] tree = {1:2,3:2,4:2,4:3}
[Out] 2
【问题讨论】:
标签: python python-3.x
如何在字典中找到重复次数最多的值?例如:
[In] tree = {1:2,3:2,4:2,4:3}
[Out] 2
【问题讨论】:
标签: python python-3.x
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
【讨论】:
(value, count), = Counter(tree.values()).most_common(1) 也是一个选项
虽然使用内置库很好,但我们可以使用基本组件来实现
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
【讨论】: