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

yipeiwu_com6年前Python基础

本文实例讲述了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列表(list)操作技巧总结》、《Python数据结构与算法教程》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

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

相关文章

Python中单线程、多线程和多进程的效率对比实验实例

python的多进程性能要明显优于多线程,因为cpython的GIL对性能做了约束。 Python是运行在解释器中的语言,查找资料知道,python中有一个全局锁(GIL),在使用多进程...

梅尔倒谱系数(MFCC)实现

本文实例为大家分享了梅尔倒谱系数实现代码,供大家参考,具体内容如下 """ @author: zoutai @file: mymfcc.py @time: 2018/03/26...

pandas 读取各种格式文件的方法

pandas 读取各种格式文件: 前置工序: import pandas as pd csv 文件读取中文错误处理: utf-8 codec can't decode .... pd...

python实现搜索本地文件信息写入文件的方法

python实现搜索本地文件信息写入文件的方法

本文实例讲述了python实现搜索本地文件信息写入文件的方法。分享给大家供大家参考,具体如下: 主要功能: 在指定的盘符,如D盘,搜索出与用户给定后缀名(如:jpg,png)相关的文件,...

Python注释、分支结构、循环结构、伪“选择结构”用法实例分析

Python注释、分支结构、循环结构、伪“选择结构”用法实例分析

本文实例讲述了Python注释、分支结构、循环结构、伪“选择结构”用法。分享给大家供大家参考,具体如下: 注释: python使用#作为行注释符,使用三引号作为多行注释符 分支结构:...