如何将计数器值除以设定的数字?

How to divide Counter values by a set number?

我一直在使用 collections.Counter 计算列表中出现的单词数。然而,我的问题是我现在希望将每个值除以预定数字(在本例中为 14)。但是,我正在尝试以下操作,但收到错误:'str' object has no attribute 'values',我理解,但不确定如何更正。这是我目前拥有的:

from collections import Counter
mylist = ['red','green','blue','red','orange','red','green']

counts = Counter(mylist)

for word in counts:
    x = word.values()/14

理想情况下,我最终想要的是一个字典列表,其中单词作为键,计数(除以我的预设值)作为值。像

>>> mynewlist = [{'Red', 0.214},{'Green', 0.143},{'Blue', 0.071},{'Orange', 0.071}]

您必须像在普通字典上那样对其进行迭代:

from collections import Counter
mylist = ['red','green','blue','red','orange','red','green']

counts = Counter(mylist)
for item, count in counts.items():
    counts[item] /= 14

print(counts)
# Counter({'red': 0.21428571428571427, 'green': 0.14285714285714285, 
# 'blue': 0.07142857142857142, 'orange': 0.07142857142857142})