我有一个规范列表,其中包含与之关联的属性的字典:
specs = {
'spec': {'name': 'color', 'value': 'blue'},
'spec': {'name':'size', 'value':'8'}
}
最终,我想从这个列表中仅提取size = 8,但是dict中size
的位置顺序发生了变化(即,它并不总是第二个元素)。
是否有更有效的方法来查找size
所在的字典,而不是循环浏览规范中的每个字典项目?
我知道如果它被定位为关键字我可以做规格[尺寸] ..但事实并非如此。
答案 0 :(得分:2)
你不会比循环遍历列表更有效率。如果你想:
,你可以编写一个很好的,紧凑的列表理解print [x['spec']['value'] for x in specs if x['spec']['name'] == 'size']
# [8]