gpt4 book ai didi

python : Count frequences in dictionary

转载 作者:行者123 更新时间:2023-11-28 20:03:26 25 4
gpt4 key购买 nike

我想计算字典中每个值的数量,并构造一个以值作为键的新值,以及以所述值作为值的键列表。

Input :
b = {'a':3,'b':3,'c':8,'d':3,'e':8}
Output:
c = { '3':[a. b. d]
'8':[c, e]
}

我已经写了以下内容,但它引发了一个关键错误并且没有给出任何输出,有人可以帮忙吗?

def dictfreq(b):
counter = dict()
for k,v in b.iteritems():
if v not in counter:
counter[v].append(k)
else:
counter[v].append(k)

return counter


print dictfreq(b)

最佳答案

实现此目的的更好方法是使用 collections.defaultdict .例如:

from collections import defaultdict
b = {'a':3,'b':3,'c':8,'d':3,'e':8}

new_dict = defaultdict(list) # `list` as default value
for k, v in b.items():
new_dict[v].append(k)

new_dict 的最终值将是:

{8: ['c', 'e'], 3: ['a', 'b', 'd']}

关于 python : Count frequences in dictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40933052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com