python - 添加计数器时如何保留我的原始字典

标签 python python-2.7 dictionary counter

据我了解,我知道何时调用 Counter 来隐藏 dict。此字典包含键的值为零将消失。

from collections import Counter

a = {"a": 1, "b": 5, "d": 0}
b = {"b": 1, "c": 2}

print Counter(a) + Counter(b)

如果我想保留我的 key ,怎么办?

这是我的预期结果:

Counter({'b': 6, 'c': 2, 'a': 1, 'd': 0})

最佳答案

您还可以使用 update() Counter 的方法而不是 + 运算符,示例 -

>>> a = {"a": 1, "b": 5, "d": 0}
>>> b = {"b": 1, "c": 2}
>>> x = Counter(a)
>>> x.update(Counter(b))
>>> x
Counter({'b': 6, 'c': 2, 'a': 1, 'd': 0})

update() 函数添加计数而不是替换它们,并且它也不会删除零值。我们也可以先做Counter(b),再用Counter(a)更新,Example -

>>> y = Counter(b)
>>> y.update(Counter(a))
>>> y
Counter({'b': 6, 'c': 2, 'a': 1, 'd': 0})

关于python - 添加计数器时如何保留我的原始字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31534546/

相关文章:

python - 使用API​​View接收参数

python - 使用数据框中的两列组合创建字典列,然后计算具有公共(public)键的两列值的比率

python - 如何将带有元组键的 python 字典转换为 pandas 多索引数据框?

python subprocess.call bash 命令,具有进程替换和文件重定向功能

python - 如何使用 python 在 Messenger-Dialogflow 聊天机器人中将 Mysql 查询结果作为 Excel 报告发送

python - pip 似乎安装到了错误的位置

python - 如何在 Ubuntu 9.10 上安装 Python 2.7

Python Numpy intersect1d 一维数组与二维数组

arrays - Swift 数组字典、数据结构

Python:在字典中搜索松散匹配