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  __getattr__与__setattr__使用方法
Sep 06 Python
python结合shell查询google关键词排名的实现代码
Feb 27 Python
python使用电子邮件模块smtplib的方法
Aug 28 Python
Python yield 使用方法浅析
May 20 Python
详解python中@的用法
Mar 27 Python
Python面向对象之继承和多态用法分析
Jun 08 Python
set在python里的含义和用法
Jun 24 Python
python实现微信小程序用户登录、模板推送
Aug 28 Python
python装饰器原理与用法深入详解
Dec 19 Python
python 操作hive pyhs2方式
Dec 21 Python
Python 解决火狐浏览器不弹出下载框直接下载的问题
Mar 09 Python
python读取当前目录下的CSV文件数据
Mar 11 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
php桌面中心(四) 数据显示
2007/03/11 PHP
php学习笔记 数组的常用函数
2011/06/13 PHP
PHP中图片等比缩放的实例
2013/03/24 PHP
PHP添加图片水印、压缩、剪切的封装类
2015/08/17 PHP
PHP实现生成带背景的图形验证码功能
2016/10/03 PHP
关于laravel模板中生成URL的几种模式总结
2019/10/18 PHP
PHP 自动加载类原理与用法实例分析
2020/04/14 PHP
jQuery基础的工厂函数以及定时器的经典实例分析
2016/05/20 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
Vue如何引入远程JS文件
2017/04/20 Javascript
JS+canvas实现的五子棋游戏【人机大战版】
2017/07/19 Javascript
ionic 3.0+ 项目搭建运行环境的教程
2017/08/09 Javascript
详解使用angular的HttpClient搭配rxjs
2017/09/01 Javascript
parabola.js抛物线与加入购物车效果的示例代码
2017/10/25 Javascript
Vue-resource拦截器判断token失效跳转的实例
2017/10/27 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
采用Psyco实现python执行速度提高到与编译语言一样的水平
2014/10/11 Python
Python二进制文件读取并转换为浮点数详解
2019/06/25 Python
Python批量修改图片分辨率的实例代码
2019/07/04 Python
Python脚本利用adb进行手机控制的方法
2019/07/08 Python
python中下标和切片的使用方法解析
2019/08/27 Python
调用其他python脚本文件里面的类和方法过程解析
2019/11/15 Python
Python生态圈图像格式转换问题(推荐)
2019/12/02 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
HTML5的一个显示电池状态的API简介
2015/06/18 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
数据管理员的自我评价分享
2013/11/15 职场文书
会计学自我鉴定
2014/02/06 职场文书
酒店采购员岗位职责
2014/03/14 职场文书
2014派出所所长群众路线对照检查材料思想汇报
2014/09/18 职场文书
作风建设年活动实施方案
2014/10/24 职场文书
2015年民主生活会发言材料
2014/12/15 职场文书
世界上超棒的8种逻辑思维
2019/08/06 职场文书
WCG2010 星际争霸决赛 Flash vs Goojila 1 星际经典比赛回顾
2022/04/01 星际争霸
Mysql的Table doesn't exist问题及解决
2022/12/24 MySQL