python从字典中提取子集的3种方法

2018-05-10  本文已影响0人  孙广宁
prices = {
    'ACME': 45.2,
    'APPLE': 612.2,
    'IBM': 205.55,  
    'HPQ': 37.20,
    'FB': 10.75
}
>>> p1 = {key:value for key,value in prices.items() if value>200}
>>> p1
{'APPLE': 612.2, 'IBM': 205.55}
>>> p2 = dict((key,value) for key,value in prices.items() if value>200)
>>> p2
{'APPLE': 612.2, 'IBM': 205.55}

*第三种使用key与已知序列求交集,实际上这种方法比第一种效率还要低1.6倍,不提倡使用

>>> tech_names = ['IBM','APPLE']
>>> p3 = {key:prices[key] for key in prices.keys() & tech_names }
>>> p3
{'APPLE': 612.2, 'IBM': 205.55}
上一篇下一篇

猜你喜欢

热点阅读