Python cookbook(数据结构与算法)从字典中提取子集的方法示例

yipeiwu_com5年前Python基础

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

问题:想创建一个字典,其本身是另一个字典的子集

解决方案:利用字典推导式(dictionary comprehension)可轻松解决

# example of extracting a subset from a dictionary
from pprint import pprint
prices = {
 'ACME': 45.23,
 'AAPL': 612.78,
 'IBM': 205.55,
 'HPQ': 37.20,
 'FB': 10.75
}
# Make a dictionary of all prices over 200
p1 = { key:value for key, value in prices.items() if value > 200 }
print("All prices over 200")
pprint(p1)
# Make a dictionary of tech stocks
tech_names = { 'AAPL', 'IBM', 'HPQ', 'MSFT' }
p2 = { key:value for key,value in prices.items() if key in tech_names }
print("All techs")
print(p2)

运行结果:

All prices over 200
{'AAPL': 612.78, 'IBM': 205.55}
All techs
{'AAPL': 612.78, 'HPQ': 37.2, 'IBM': 205.55}

字典推导式的方案清晰且运行起来很快。

(代码摘自《Python Cookbook》)

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字典操作技巧汇总》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

python-opencv在有噪音的情况下提取图像的轮廓实例

python-opencv在有噪音的情况下提取图像的轮廓实例

对于一般的图像提取轮廓,介绍了一个很好的方法,但是对于有噪声的图像,并不能很好地捕获到目标物体。 比如对于我的鼠标,提取的轮廓效果并不好,因为噪声很多: 所以本文增加了去掉噪声的部分。...

Java实现的执行python脚本工具类示例【使用jython.jar】

本文实例讲述了Java实现的执行python脚本工具类。分享给大家供大家参考,具体如下: 这里java中执行python脚本工具类,需要使用jython.jar java中执行pytho...

Python深入学习之特殊方法与多范式

Python一切皆对象,但同时,Python还是一个多范式语言(multi-paradigm),你不仅可以使用面向对象的方式来编写程序,还可以用面向过程的方式来编写相同功能的程序(还有函...

Pytorch 抽取vgg各层并进行定制化处理的方法

工作中有时候需要对vgg进行定制化处理,比如有些时候需要借助于vgg的层结构,但是需要使用的是2 channels输入,等等需求,这时候可以使用vgg的原始结构用class重写一遍,但是...

python中zip()方法应用实例分析

本文实例分析了python中zip()方法的应用。分享给大家供大家参考,具体如下: 假设有一个集合set, 需要对set中的每个元素指定一个唯一的id,从而组建成一个dict结构。 这个...