在Python中一次增加一个Counter项而不使用更新

时间:2018-05-28 17:58:07

标签: python collections

我正在用Python编写一些涉及使用Counter类的东西,就像名字所暗示的那样:逐个计算项目。每当我想要计算某些内容时,我都会将其中的一个元素列表提供给Counter.update

from collections import Counter

c = Counter()
c.update(["foo"])  # Works, but do I really need to create a list every time I want to do this?

这是正确的方法吗?创建列表感觉很尴尬。我一直在寻找这样的东西:

c.add("bar")  # Method doesn't exist

创建我自己的Counter子类似乎相当轻松,但如果可能的话,处理设计的内置类会更好,我想知道我是否遗漏了什么。

class MyCounter(Counter):
    def add(self, item):
        self.update([item])

c2 = MyCounter()
c2.add("bar")  # Now it works

0 个答案:

没有答案