提取字典的子集
有時候,需要根據(jù)已知的字典對象構(gòu)造一個新的字典對象。這種場景可以使用字典生成式(dictionary comprehension)。如下:
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}# 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}同樣,也可以使用dict的構(gòu)造函數(shù),如下:
p1 = dict((key, value) for key, value in prices.items() if value > 200)然而,使用字典生成式更清晰,實際運行速度要快得多(在示例中使用的字典上測試時速度快兩倍)。
下面是另一種示例:
轉(zhuǎn)載于:https://www.cnblogs.com/jeffrey-yang/p/11314900.html
總結(jié)
- 上一篇: C++11并发之std::thread
- 下一篇: 大数据技术原理与应用学习笔记(八)