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绘制数据的瀑布图的教程
Apr 07 Python
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
Dec 25 Python
探究python中open函数的使用
Mar 01 Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
Jul 12 Python
Python单向链表和双向链表原理与用法实例详解
Aug 31 Python
对python 通过ssh访问数据库的实例详解
Feb 19 Python
Python爬虫图片懒加载技术 selenium和PhantomJS解析
Sep 18 Python
Python实现自动打开电脑应用的示例代码
Apr 17 Python
如何表示python中的相对路径
Jul 08 Python
Python实现像awk一样分割字符串
Sep 15 Python
Python 串口通信的实现
Sep 29 Python
python绘制箱型图
Apr 27 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
DC游戏Steam周三特惠 《蝙蝠侠》阿卡姆系列平史低
2020/04/09 欧美动漫
图解上海144收音机
2021/03/02 无线电
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
php错误日志简单配置方法
2016/07/11 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
浅谈laravel数据库查询返回的数据形式
2019/10/21 PHP
用一段js程序来实现动画功能
2007/03/06 Javascript
javascript indexOf函数使用说明
2008/07/03 Javascript
通过js获取div的background-image属性
2013/10/15 Javascript
吐槽一下我所了解的Node.js
2014/10/08 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
js改变透明度实现轮播图的算法
2020/08/24 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
vue 里面使用axios 和封装的示例代码
2017/09/01 Javascript
基于vue实现分页效果
2017/11/06 Javascript
基于jQuery实现Ajax验证用户名是否可用实例
2018/03/25 jQuery
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
前端js中的事件循环eventloop机制详解
2019/05/15 Javascript
微信小程序加载机制及运行机制图解
2019/11/27 Javascript
python with statement 进行文件操作指南
2014/08/22 Python
详解django中自定义标签和过滤器
2017/07/03 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
Python捕获异常堆栈信息的几种方法(小结)
2020/05/18 Python
基于Python爬虫采集天气网实时信息
2020/06/05 Python
python 制作简单的音乐播放器
2020/11/25 Python
python之随机数函数的实现示例
2020/12/30 Python
HTML5中canvas中的beginPath()和closePath()的重要性
2018/08/24 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
机械专业毕业生推荐信范文
2013/11/25 职场文书
行政部主管岗位职责
2013/12/28 职场文书
消防先进事迹材料
2014/02/10 职场文书
给校长的建议书600字
2014/05/15 职场文书
公积金贷款承诺书
2015/04/30 职场文书
pytorch 一行代码查看网络参数总量的实现
2021/05/12 Python
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis