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

yipeiwu_com5年前Python基础

本文实例讲述了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

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字典操作技巧汇总》、《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python实现GUI学生信息管理系统

Python实现GUI学生信息管理系统

本文实例为大家分享了Python实现GUI学生信息管理系统的具体代码,供大家参考,具体内容如下 项目环境:  软件环境:     &n...

Python寻找两个有序数组的中位数实例详解

Python寻找两个有序数组的中位数实例详解

Python寻找两个有序数组的中位数 审题: 1.找出意味着这是一个查找算法题 2.算法复杂度log级别,就是提示你是二分查找 3.二分查找实现一般为递归  (1)递归包括递...

Python企业编码生成系统之主程序模块设计详解

本文实例讲述了Python企业编码生成系统之主程序模块。分享给大家供大家参考,具体如下: 一 点睛 主程序模块包括三部分: 1 主程序初始化 2 主程序界面 3 主程序逻辑 下面分别介绍...

Python中交换两个元素的实现方法

Python既具有普通程序开发语言的特点,也具有Matlab语言用于数值计算的特点,,当然了数值计算是由其其强大的第三方库numpy实现的,矩阵在python中数据类型是ndarray,...

基于循环神经网络(RNN)实现影评情感分类

使用循环神经网络(RNN)实现影评情感分类 作为对循环神经网络的实践,我用循环神经网络做了个影评情感的分类,即判断影评的感情色彩是正面的,还是负面的。 选择使用RNN来做情感分类,主要是...