从字典中的字典中提取信息

时间:2013-05-16 20:33:09

标签: python

我有一个规范列表,其中包含与之关联的属性的字典:

specs = {
    'spec': {'name': 'color',   'value': 'blue'},
    'spec': {'name':'size', 'value':'8'}
}

最终,我想从这个列表中仅提取size = 8,但是dict中size的位置顺序发生了变化(即,它并不总是第二个元素)。

是否有更有效的方法来查找size所在的字典,而不是循环浏览规范中的每个字典项目?

我知道如果它被定位为关键字我可以做规格[尺寸] ..但事实并非如此。

1 个答案:

答案 0 :(得分:2)

你不会比循环遍历列表更有效率。如果你想:

,你可以编写一个很好的,紧凑的列表理解
print [x['spec']['value'] for x in specs if x['spec']['name'] == 'size']
#  [8]