我正在使用集合计数器来计算列表中的每个字符串(它们可能不是唯一的)。问题是现在我无法访问字典,我不知道为什么。
我的代码是:
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
我做错了什么?非常感谢。
答案 0 :(得分:2)
将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']
,即使用Counter
作为参数创建新的'BAM'
对象,这是无效的。相反,如果你执行Counter(my_dict)['BAM']
,它也会起作用,因为它是你的dict传递的同一个对象,而你正在访问其中的'BAM'
键