python

超轻量级php框架startmvc

python实现两个dict合并与计算操作示例

更新时间:2020-07-10 15:30:02 作者:startmvc
本文实例讲述了python实现两个dict合并与计算操作。分享给大家供大家参考,具体如下:用py

本文实例讲述了python实现两个dict合并与计算操作。分享给大家供大家参考,具体如下:

用pythonic 的方法,将两个dict合并,并进行计算. 如果key值相同,则将他们的值进行想加,否则保留原来的值.

当然,通常会想到,用循环的方法来做,这是一般人都知道的做法,下面讲一个python  dict 内置的方法来实现。

比如有如下两个字典:


Dict A: {'a':1, 'b':2, 'c':3}
Dict B: {'b':3, 'c':4, 'd':5}

将他们想加后得到的结果是:

{'a':1, 'b':5, 'c':7, 'd':5}

最简单的办法是使用 collections.Counter:


>>> from collections import Counter
>>> A = Counter({'a':1, 'b':2, 'c':3})
>>> B = Counter({'b':3, 'c':4, 'd':5})
>>> A + B
Counter({'c': 7, 'b': 5, 'd': 5, 'a': 1})

Counter 是 dict 的子类,因此你可以像使用dict 一样使用她,比如


>>> C=A+B
>>> for item in C:
 print item,C.get(item)

运行结果:

a 1 c 7 b 5 d 5

本文参考网址: http://docs.python.org/library/collections.html#collections.Counter

python dict 合并 计算