0

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

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

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

size除了遍历规范中的每个 dict 项目之外,是否有更有效的方法来查找其中的 dict ?

我知道如果它被定位为钥匙,我可以做规格 [大小].. 但事实并非如此。

4

1 回答 1

2

您不会比遍历列表更有效。如果您愿意,您可以编写一个漂亮、紧凑的列表推导:

print [x['spec']['value'] for x in specs if x['spec']['name'] == 'size']
#  [8]
于 2013-05-16T20:47:54.177 回答