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

 更新时间:2018年02月09日 14:14:52   作者:Lockeyi  
这篇文章主要介绍了Python编程实现从字典中提取子集的方法,结合实例形式对比分析了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程序设计有所帮助。

相关文章

  • pytorch模型保存与加载中的一些问题实战记录

    pytorch模型保存与加载中的一些问题实战记录

    一般来说,保存模型是把参数全部用model.cpu().state_dict(),然后加载模型时一般用model.load_state_dict(torch.load(model_path)),下面这篇文章主要给大家介绍了关于pytorch模型保存与加载中的一些问题实战记录,需要的朋友可以参考下
    2022-10-10
  • python如何解析配置文件并应用到项目中

    python如何解析配置文件并应用到项目中

    这篇文章主要介绍了python如何解析配置文件并应用到项目中,如果我们更换了电脑也可以继续使用原来的文件,只要把里面的数据拷贝到游戏执行的配置文件里面就可以了,我们重新再进入就不用重新设置内挂的配置了,需要的朋友可以参考下
    2019-06-06
  • python实现颜色rgb和hex相互转换的函数

    python实现颜色rgb和hex相互转换的函数

    这篇文章主要介绍了python实现颜色rgb和hex相互转换的函数,可实现将rgb表示的颜色转换成hex值的功能,非常具有实用价值,需要的朋友可以参考下
    2015-03-03
  • win7+Python3.5下scrapy的安装方法

    win7+Python3.5下scrapy的安装方法

    这篇文章主要介绍了win7+Python3.5下scrapy的安装方法
    2018-07-07
  • python中的os.path.join使用方法详解

    python中的os.path.join使用方法详解

    这篇文章主要介绍了python中的os.path.join使用方法详解,os.path.join用于将多个路径拼接为一个完整路径,经常使用,但没了解过细节,直到今天遇到一个令人疑惑的问题,最后发现是os.path.join的问题,借此机会,记录下os.path.join的用法,需要的朋友可以参考下
    2023-11-11
  • Jupyter notebook快速入门教程(推荐)

    Jupyter notebook快速入门教程(推荐)

    这篇文章主要介绍了Jupyter notebook快速入门教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • python上下文管理器协议的实现

    python上下文管理器协议的实现

    这篇文章主要介绍了python上下文管理器协议的实现,在python中所有实现了上下文管理器协议的对象 都可以用使用with操作,with启动了对象的上下文管理器
    2022-06-06
  • Python中打印出指定格式日期时间的12种方式

    Python中打印出指定格式日期时间的12种方式

    无论是为了数据分析、文件命名还是日志记录,掌握多种日期格式化的方法都是很有帮助的,下面我们来探索一下如何以各种不同的方式使用Python打印出指定格式的日期吧
    2025-02-02
  • DataFrame窗口函数rolling()的用法

    DataFrame窗口函数rolling()的用法

    这篇文章主要介绍了DataFrame窗口函数rolling()的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • 详解Python中的变量及其命名和打印

    详解Python中的变量及其命名和打印

    这篇文章主要介绍了Python中的变量及其命名和打印,是Python入门学习中的基础知识,需要的朋友可以参考下
    2016-03-03

最新评论