Python中实现两个字典(dict)合并的方法


Posted in Python onSeptember 23, 2014

本文实例讲述了Python中实现两个字典(dict)合并的方法,分享给大家供大家参考。具体方法如下:

现有两个字典dict如下:

dict1={1:[1,11,111],2:[2,22,222]}
dict2={3:[3,33,333],4:[4,44,444]}

合并两个字典得到类似:

{1:[1,11,111],2:[2,22,222],3:[3,33,333],4:[4,44,444]}

方法1:

dictMerged1=dict(dict1.items()+dict2.items())

方法2:

dictMerged2=dict(dict1, **dict2)

方法2等同于:

dictMerged=dict1.copy()
dictMerged.update(dict2)

或者:

dictMerged=dict(dict1)
dictMerged.update(dict2)

方法2比方法1速度快很多,用timeit测试如下

$ python -m timeit -s 'dict1=dict2=dict((i,i) for i in range(100))' 'dictMerged1=dict(dict1.items()+dict2.items())'
  10000 loops, best of 3: 20.7 usec per loop
$ python -m timeit -s 'dict1=dict2=dict((i,i) for i in range(100))' 'dictMerged2=dict(dict1,**dict2)'
  100000 loops, best of 3: 6.94 usec per loop
$ python -m timeit -s 'dict1=dict2=dict((i,i) for i in range(100))' 'dictMerged3=dict(dict1)' 'dictMerged3.update(dict2)'
  100000 loops, best of 3: 7.09 usec per loop
$ python -m timeit -s 'dict1=dict2=dict((i,i) for i in range(100))' 'dictMerged4=dict1.copy()' 'dictMerged4.update(dict2)'
  100000 loops, best of 3: 6.73 usec per loop

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

Python 相关文章推荐
Python 过滤字符串的技巧,map与itertools.imap
Sep 06 Python
Python中使用urllib2防止302跳转的代码例子
Jul 07 Python
Python标准库之Sys模块使用详解
May 23 Python
python中引用与复制用法实例分析
Jun 04 Python
tensorflow入门之训练简单的神经网络方法
Feb 26 Python
Python paramiko模块的使用示例
Apr 11 Python
Django 接收Post请求数据,并保存到数据库的实现方法
Jul 12 Python
Python实现报警信息实时发送至邮箱功能(实例代码)
Nov 11 Python
django框架中间件原理与用法详解
Dec 10 Python
opencv3/python 鼠标响应操作详解
Dec 11 Python
在django admin中配置搜索域是一个外键时的处理方法
May 20 Python
如何利用python创作字符画
Jun 25 Python
python实现去除下载电影和电视剧文件名中的多余字符的方法
Sep 23 #Python
Python中的类学习笔记
Sep 23 #Python
Python函数嵌套实例
Sep 23 #Python
Python中的自定义函数学习笔记
Sep 23 #Python
Python中的exec、eval使用实例
Sep 23 #Python
Python的高级Git库 Gittle
Sep 22 #Python
Python实现抓取网页并且解析的实例
Sep 20 #Python
You might like
1982年日本摄影师镜头下的中国孩子 那无忧无虑的童年
2020/03/12 杂记
php使用百度翻译api示例分享
2014/01/31 PHP
php多维数组去掉重复值示例分享
2014/03/02 PHP
巧妙破除网页右键禁用的十大绝招
2006/08/12 Javascript
Jquery弹出层插件ThickBox的使用方法
2014/12/09 Javascript
jQuery使用append在html元素后同时添加多项内容的方法
2015/03/26 Javascript
深入剖析JavaScript面向对象编程
2016/07/12 Javascript
JavaScript prototype属性详解
2016/10/25 Javascript
微信小程序之电影影评小程序制作代码
2017/08/03 Javascript
javascript将url解析为json格式的两种方法
2017/08/18 Javascript
五步轻松实现zTree的使用
2017/11/01 Javascript
Vue2.0设置全局样式(less/sass和css)
2017/11/18 Javascript
jQuery实现获取选中复选框的值实例详解
2018/06/28 jQuery
Vuejs开发环境搭建及热更新【推荐】
2018/09/07 Javascript
Vue循环组件加validate多表单验证的实例
2018/09/18 Javascript
Fetch超时设置与终止请求详解
2019/05/18 Javascript
JS学习笔记之贪吃蛇小游戏demo实例详解
2019/05/29 Javascript
js构造函数constructor和原型prototype原理与用法实例分析
2020/03/02 Javascript
Vue 简单实现前端权限控制的示例
2020/12/25 Vue.js
使用Python操作excel文件的实例代码
2017/10/15 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
利用pandas将numpy数组导出生成excel的实例
2018/06/14 Python
python爬虫获取新浪新闻教学
2018/12/23 Python
Pycharm设置utf-8自动显示方法
2019/01/17 Python
python 动态生成变量名以及动态获取变量的变量名方法
2019/01/20 Python
python 列表中[ ]中冒号‘:’的作用
2019/04/30 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
python实现证件照换底功能
2019/08/20 Python
kafka监控获取指定topic的消息总量示例
2019/12/23 Python
django中嵌套的try-except实例
2020/05/21 Python
如何基于Python和Flask编写Prometheus监控
2020/11/25 Python
DNA测试:Orig3n
2019/03/01 全球购物
实习自我鉴定范文
2013/10/30 职场文书
课堂教学改革实施方案
2014/03/17 职场文书
2015年数学教研组工作总结
2015/05/23 职场文书
java设计模式--原型模式详解
2021/07/21 Java/Android