【发布时间】:2014-10-02 06:19:12
【问题描述】:
我正在尝试理解这种行为:
>>> Counter({'a':0})
Counter({'a': 0})
>>> Counter({'a':0}) + Counter({'a':0})
Counter()
>>> len(Counter({'a':0}))
1
>>> len(Counter({'a':0}) + Counter({'a':0}))
0
这对我来说似乎不一致——想法?
【问题讨论】:
-
文档对此非常明确;对两个计数器求和时,计数为 0 的键会被丢弃。
-
我查找了有关此行为的文档但找不到,这就是我在寻找的地方。还有其他建议去哪里看? docs.python.org/2/library/collections.html
-
该页面的引用:“加法和减法通过添加或减去相应元素的计数来组合计数器。交集和联合返回相应计数的最小值和最大值。每个操作都可以接受输入有符号计数,但输出将排除计数为零或更少的结果。"
-
它记录在该页面上;我对链接副本的回答突出显示了确切的措辞。
标签: python