将嵌套列表转换为多个词典

时间:2020-03-25 16:41:10

标签: python python-3.x

lst = [['111', 'kam'],['222', 'Van']]
Header = ['ID', 'Name']

我想根据标题将以上列表转换为字典。我可以简单地使用for循环来实现此目的,方法是使每个元素都处于循环状态,然后一个接一个地追加到一些新列表中。

但是,我想在不使用循环的情况下达到相同的效果,以防止出现性能问题。 有什么办法吗?

预期输出:

[{'ID' : '111', 'Name' : 'Kam'},{'ID' : '222', 'Name' : 'Van'}]

1 个答案:

答案 0 :(得分:5)

您可以使用列表理解:

lst = [['111', 'kam'],['222', 'Van']]
Header = ['ID', 'Name']

result = [dict(zip(Header, row)) for row in lst]
print(result)

输出:

[{'ID': '111', 'Name': 'kam'}, {'ID': '222', 'Name': 'Van'}]