Python编程实现从字典中提取子集的方法分析


Posted in Python onFebruary 09, 2018

本文实例讲述了Python编程实现从字典中提取子集的方法。分享给大家供大家参考,具体如下:

首先我们会想到使用字典推导式(dictionary comprehension)来解决这个问题,例如以下场景:

prices={'ACME':45.23,'APPLE':666,'IBM':343,'HPQ':33,'FB':10}
#选出价格大于 200 的
gt200={key:value for key,value in prices.items() if value > 200}
print(gt200)
print('---------------------')
#提取科技公司的相关信息
tech={'APPLE','IBM','HPQ','FB'}
techDict={ key:value for key,value in prices.items() if key in tech}
print(techDict)

运行结果如下:

{'APPLE': 666, 'IBM': 343}
---------------------
{'APPLE': 666, 'FB': 10, 'IBM': 343, 'HPQ': 33}

大部分可以通过字典推导式解决的问题也可以通过创建元组序列然后将它们传给dict()函数来完成,例如:

gt200Dict=dict((key,value) for key,value in prices.items() if value > 200)
print(gt200Dict)
print('---------------------')
techDict2={ key:prices[key] for key in prices.keys() & tech}
print(techDict2)

但是,对于第一个输出结果,字典推导式的方案相比更加清晰而且运行更快;第二个输出的速度也慢了很多,所以,采用字典推导式为最佳选择方案。

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

Python 相关文章推荐
Python WXPY实现微信监控报警功能的代码
Oct 20 Python
python面向对象多线程爬虫爬取搜狐页面的实例代码
May 31 Python
Python基于sklearn库的分类算法简单应用示例
Jul 09 Python
Python安装pycurl失败的解决方法
Oct 15 Python
对python生成业务报表的实例详解
Feb 03 Python
PyTorch预训练的实现
Sep 18 Python
基于pandas中expand的作用详解
Dec 17 Python
解决tensorflow由于未初始化变量而导致的错误问题
Jan 06 Python
Django choices下拉列表绑定实例
Mar 13 Python
python学习之panda数据分析核心支持库
May 07 Python
Python下opencv库的安装过程及问题汇总
Jun 11 Python
详解MindSpore自定义模型损失函数
Jun 30 Python
python tensorflow学习之识别单张图片的实现的示例
Feb 09 #Python
python删除服务器文件代码示例
Feb 09 #Python
详解Python使用tensorflow入门指南
Feb 09 #Python
python编程测试电脑开启最大线程数实例代码
Feb 09 #Python
Python实现对一个函数应用多个装饰器的方法示例
Feb 09 #Python
Python+PIL实现支付宝AR红包
Feb 09 #Python
Python 实现12306登录功能实例代码
Feb 09 #Python
You might like
PHP+javascript模拟Matrix画面
2006/10/09 PHP
php中经典方法实现判断多维数组是否为空
2011/10/23 PHP
PHP中session变量的销毁
2014/02/27 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
利用js对象弹出一个层
2008/03/26 Javascript
js创建对象的几种常用方式小结(推荐)
2010/10/24 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
jQuery统计上传文件大小的方法
2015/01/24 Javascript
12种JavaScript常用的MVC框架比较分析
2015/11/16 Javascript
基于slideout.js实现移动端侧边栏滑动特效
2016/11/28 Javascript
简述JS控制台的使用
2018/07/15 Javascript
jQuery easyui datagird编辑行删除行功能的实现代码
2018/09/20 jQuery
Web安全之XSS攻击与防御小结
2018/12/13 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
微信小程序引入Vant组件库过程解析
2019/08/06 Javascript
JS桶排序的简单理解与实现方法示例
2019/11/25 Javascript
vue中使用elementUI组件手动上传图片功能
2019/12/13 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
js代码实现轮播图
2020/05/04 Javascript
angula中使用iframe点击后不执行变更检测的问题
2020/05/10 Javascript
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
[00:18]天涯墨客三技能展示
2018/08/25 DOTA
跟老齐学Python之编写类之一创建实例
2014/10/11 Python
详解Python3.1版本带来的核心变化
2015/04/07 Python
在Python程序中进行文件读取和写入操作的教程
2015/04/28 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
解决pyecharts在jupyter notebook中使用报错问题
2020/04/23 Python
CSS3中颜色线性渐变实战
2015/07/18 HTML / CSS
Ticketmaster意大利:音乐会、节日、艺术和剧院的官方门票
2019/12/23 全球购物
水利公司纪检监察自我鉴定
2014/02/25 职场文书
小浪底导游词
2015/02/12 职场文书
高中生综合素质自我评价
2015/03/06 职场文书
Python实现文本文件拆分写入到多个文本文件的方法
2021/04/18 Python
Python实现数据的序列化操作详解
2022/07/07 Python