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之list和str比较
Sep 20 Python
python中关于for循环的碎碎念
Jun 30 Python
不管你的Python报什么错,用这个模块就能正常运行
Sep 14 Python
浅谈Python类中的self到底是干啥的
Nov 11 Python
使用python实现回文数的四种方法小结
Nov 24 Python
Python爬虫爬取煎蛋网图片代码实例
Dec 16 Python
Python 实现OpenCV格式和PIL.Image格式互转
Jan 09 Python
python mysql 字段与关键字冲突的解决方式
Mar 02 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
Apr 17 Python
keras分类之二分类实例(Cat and dog)
Jul 09 Python
详解Anaconda安装tensorflow报错问题解决方法
Nov 01 Python
详解Django自定义图片和文件上传路径(upload_to)的2种方式
Dec 01 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
用Flash图形化数据(一)
2006/10/09 PHP
探讨如何在php168_cms中提取验证码
2013/06/08 PHP
解析左右值无限分类的实现算法
2013/06/20 PHP
php include类文件超时问题处理
2015/02/06 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
原生JS实现Ajax通过GET方式与PHP进行交互操作示例
2018/05/12 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
js封装的textarea操作方法集合(兼容很好)
2010/11/16 Javascript
javascript去除字符串左右两端的空格
2015/02/05 Javascript
使用Bootstrap typeahead插件实现搜索框自动补全的方法
2016/07/07 Javascript
json定义及jquery操作json的方法
2016/09/29 Javascript
JAVA Web实时消息后台服务器推送技术---GoEasy
2016/11/04 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
基于hover的用法实例(推荐)
2017/07/04 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
Taro集成Redux快速上手的方法示例
2018/06/21 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
一文读懂ES7中的javascript修饰器
2019/05/06 Javascript
Vue 无限滚动加载指令实现方法
2019/05/28 Javascript
Jquery使用each函数实现遍历及数组处理
2020/07/14 jQuery
在Python的Django框架中创建语言文件
2015/07/27 Python
Python的shutil模块中文件的复制操作函数详解
2016/07/05 Python
Python 装饰器使用详解
2017/07/29 Python
Python如何实现MySQL实例初始化详解
2017/11/06 Python
大家都说好用的Python命令行库click的使用
2019/11/07 Python
将python安装信息加入注册表的示例
2019/11/20 Python
详解numpy.ndarray.reshape()函数的参数问题
2020/10/13 Python
用HTML5实现网站在windows8中贴靠的方法
2013/04/21 HTML / CSS
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
高清屏下canvas重置尺寸引发的问题的解决
2019/10/14 HTML / CSS
德国运动营养和健身网上商店:Myprotein.de
2018/07/18 全球购物
美国狗旅行和户外用品领先供应商:kurgo
2020/08/18 全球购物
Android笔试题总结
2014/11/29 面试题
超市促销实习自我鉴定
2013/09/23 职场文书
大学生护理专业自荐信
2013/10/03 职场文书
客服服务心得体会
2013/12/30 职场文书