从Python字典中的列表中获取值列表

时间:2019-03-14 21:45:26

标签: python dictionary

我用以下格式创建了一个字典,其中包含键以及与每个键相关联的属性列表:

inputDatasets = {
    "data1": ["Path to data 1", "Attribute1", "Attribute2", "Attribute3"],
    "data2": ["Path to data 2", "Attribute1", "Attribute2", "Attribute3"],
}

我想获取字典中包含的所有“ Attribute2”的列表。现在,我使用:

attr2 = []
for a, b in inputDatasets.items():
    attr2.append(b[2])

但是还有更优雅的方法吗?

2 个答案:

答案 0 :(得分:3)

您可以使用列表推导,仅遍历值而不是键值对:

(?!\S)

或者,但不那么优雅,将attr2 = [b[2] for b in inputDatasets.values()] map一起使用可能会有用:

lambda

答案 1 :(得分:0)

您也可以按照以下步骤进行操作

attr2 = [v[2] for v in inputDatasets.values()]