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使用rabbitmq实现网络爬虫示例
Feb 20 Python
python中xrange和range的区别
May 13 Python
Python写的一个简单DNS服务器实例
Jun 04 Python
Django中几种重定向方法
Apr 28 Python
举例详解Python中yield生成器的用法
Aug 05 Python
python实现生命游戏的示例代码(Game of Life)
Jan 24 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
Jun 11 Python
python 实现对文件夹中的图像连续重命名方法
Oct 25 Python
python 搭建简单的http server,可直接post文件的实例
Jan 03 Python
pyqt远程批量执行Linux命令程序的方法
Feb 14 Python
Python小程序 控制鼠标循环点击代码实例
Oct 08 Python
python3中数组逆序输出方法
Dec 01 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的substr_replace将指定两位置之间的字符替换为*号
2011/05/04 PHP
那些年一起学习的PHP(三)
2012/03/22 PHP
Yii使用migrate命令执行sql语句的方法
2016/03/15 PHP
PHP设计模式之注册树模式分析
2018/01/26 PHP
实例讲解通过​PHP创建数据库
2019/01/20 PHP
laravel 根据不同组织加载不同视图的实现
2019/10/14 PHP
JavaScript入门学习书籍推荐
2008/06/12 Javascript
javascript内存管理详细解析
2013/11/11 Javascript
TypeScript Type Innference(类型判断)
2016/03/10 Javascript
浅谈String.valueOf()方法的使用
2016/06/06 Javascript
jquery获取input type=text中的值的各种方式(总结)
2016/12/02 Javascript
Angular实现双向折叠列表组件的示例代码
2017/11/21 Javascript
利用JS测试目标网站的打开响应速度
2017/12/01 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
Element UI框架中巧用树选择器的实现
2018/12/12 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
2019/03/26 Javascript
js中!和!!的区别与用法
2020/05/09 Javascript
[06:21]完美世界亚洲区首席发行官竺琦TI3采访
2013/08/26 DOTA
[06:45]DOTA2-DPC中国联赛 正赛 Magma vs LBZS 选手采访
2021/03/11 DOTA
python里大整数相乘相关技巧指南
2014/09/12 Python
Python日志模块logging简介
2015/04/13 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Python语法分析之字符串格式化
2019/06/13 Python
python脚本后台执行方式
2019/12/21 Python
CSS3新增布局之: flex详解
2020/06/18 HTML / CSS
美国特价机票专家:Airfarewatchdog
2018/01/24 全球购物
什么是规则表达式
2012/05/03 面试题
保险专业自荐信范文
2014/02/20 职场文书
yy婚礼主持词
2014/03/14 职场文书
捐助感谢信
2015/01/22 职场文书
人事局接收函
2015/01/30 职场文书
五一晚会主持词
2015/07/01 职场文书
提档介绍信范文
2015/10/22 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers
win11开机发生死循环重启怎么办?win11开机发生死循环重启解决方法
2022/08/05 数码科技