Python cookbook(数据结构与算法)实现查找两个字典相同点的方法


Posted in Python onFebruary 18, 2018

本文实例讲述了Python实现查找两个字典相同点的方法。分享给大家供大家参考,具体如下:

问题:寻找两个字典中间相同的地方(相同的键、相同的值等)

解决方案:通过keys()或者items()方法来执行常见的集合操作(比如求并集、交集和差集)

Python cookbook(数据结构与算法)实现查找两个字典相同点的方法

>>> a={'x':1,'y':2,'z':3}
>>> b={'ww':10,'x':11,'y':2}
>>> a.keys()& b.keys() #键的交集
{'y', 'x'}
>>> a.keys()- b.keys() #键的差集
{'z'}
>>> a.keys()| b.keys() #键的并集
{'ww', 'y', 'x', 'z'}
>>> a.items()& b.items()
{('y', 2)}
>>> a.items()- b.items()
{('z', 3), ('x', 1)}
>>> a.items()| b.items()
{('ww', 10), ('z', 3), ('x', 1), ('x', 11), ('y', 2)}
>>>

这些类型的操作也可用来修改或过滤掉字典中的内容。例如:

>>> c = {key:a[key] for key in a.keys()-{'w','z'}} #新建一个去掉某些键的新字典
>>> c
{'y': 2, 'x': 1}
>>>

总结:

字典的keys()方法、items()方法支持集合操作,但是values()方法不支持。因为在字典中从值的角度来看并不能保证所有的值都是唯一的,这会导致某些集合操作存在问题。但是可以通过将值转化为集合来实现此类操作。

(代码摘自《Python Cookbook》)

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

Python 相关文章推荐
详解Python的Django框架中的templates设置
May 11 Python
python实现查找excel里某一列重复数据并且剔除后打印的方法
May 26 Python
以windows service方式运行Python程序的方法
Jun 03 Python
python各种语言间时间的转化实现代码
Mar 23 Python
如何用Python实现简单的Markdown转换器
Jul 16 Python
opencv实现简单人脸识别
Feb 19 Python
Mac 使用python3的matplot画图不显示的解决
Nov 23 Python
python:HDF和CSV存储优劣对比分析
Jun 08 Python
Python预测2020高考分数和录取情况
Jul 08 Python
Python在centos7.6上安装python3.9的详细教程(默认python版本为2.7.5)
Oct 15 Python
关于django python manage.py startapp 应用名出错异常原因解析
Dec 15 Python
Python实现科学占卜 让视频自动打码
Apr 09 Python
Python cookbook(数据结构与算法)字典相关计算问题示例
Feb 18 #Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 #Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
Feb 18 #Python
Python cookbook(数据结构与算法)实现优先级队列的方法示例
Feb 18 #Python
python快速建立超简单的web服务器的实现方法
Feb 17 #Python
Python cookbook(数据结构与算法)找到最大或最小的N个元素实现方法示例
Feb 13 #Python
python3学习笔记之多进程分布式小例子
Feb 13 #Python
You might like
在PHP中养成7个面向对象的好习惯
2010/07/17 PHP
php数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
探讨如何在PHP开启gzip页面压缩实例
2013/06/09 PHP
PHP连接SQLServer2005方法及代码
2013/12/26 PHP
YII实现分页的方法
2014/07/09 PHP
PHP中返回引用类型的方法
2015/04/03 PHP
PHP命令Command模式用法实例分析
2018/08/08 PHP
用js实现的检测浏览器和系统的函数
2009/04/09 Javascript
JavaScript函数详解
2014/11/17 Javascript
jQuery幻灯片特效代码分享--鼠标滑过按钮时切换(2)
2020/11/18 Javascript
Node.js开发者必须了解的4个JS要点
2016/02/21 Javascript
javascript获取以及设置光标位置
2017/02/16 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
深入理解Promise.all
2018/08/08 Javascript
对angularJs中controller控制器scope父子集作用域的实例讲解
2018/10/08 Javascript
JS实现图片轮播效果实例详解【可自动和手动】
2019/04/04 Javascript
使用taro开发微信小程序遇到的坑总结
2019/04/08 Javascript
webpack的 rquire.context用法实现工程自动化的方法
2020/02/07 Javascript
Python 3.x读写csv文件中数字的方法示例
2017/08/29 Python
python保存文件方法小结
2018/07/27 Python
Python3使用Matplotlib 绘制精美的数学函数图形
2019/04/11 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
使用Pytorch来拟合函数方式
2020/01/14 Python
浅析Python面向对象编程
2020/07/10 Python
python正则表达式re.match()匹配多个字符方法的实现
2021/01/27 Python
ProBikeKit澳大利亚:自行车套件,跑步和铁人三项装备
2016/11/30 全球购物
英国在线泳装店:Simply Swim
2019/05/05 全球购物
园林技术个人的自我评价
2014/01/08 职场文书
企业出纳岗位职责
2014/03/12 职场文书
党员实事承诺书
2014/03/26 职场文书
2014最新预备党员思想汇报范文:中国梦,我的梦
2014/10/25 职场文书
学校实习推荐信
2015/03/27 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
安全生产感想
2015/08/07 职场文书
2019最新版试用期劳动合同模板!
2019/07/04 职场文书