收款计数器 python 无法访问密钥

collections counter python can't access the key

我正在使用集合计数器来计算列表中的每个字符串(它们可能不是唯一的)。问题是现在我无法访问词典,我不确定为什么。

我的代码是:

from collections import Counter
result1  = Counter(list_final1) #to count strings inside list

如果我打印 result1,输出例如:

Counter({'BAM': 44, 'CCC': 20, 'APG': 14, 'MBI': 11, 'BAV': 10})

例如,要访问数字 44,我希望使用 Counter['BAM']

但是上面的这个不起作用,我得到了错误:

    print (Counter['BAM'])
TypeError: 'type' object is not subscriptable

我做错了什么?非常感谢。

将您的 key 与存储 Counter 值的变量一起使用,在您的例子中是 result1。示例:

>>> from collections import Counter
>>> my_dict = {'BAM': 44, 'CCC': 20, 'APG': 14, 'MBI': 11, 'BAV': 10}
>>> result = Counter(my_dict)
>>> result['BAM']
44

解释:

您正在做 Counter['BAM'],即用 'BAM' 作为参数创建新的 Counter 对象,这是无效的。相反,如果你这样做 Counter(my_dict)['BAM'],它也会工作,因为它是传递你的字典的同一个对象,并且你正在访问其中的 'BAM'