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

Sat*_*mar -2 python python-3.x

lst = [['111', 'kam'],['222', 'Van']]
Header = ['ID', 'Name']
Run Code Online (Sandbox Code Playgroud)

我想根据标题将上面的列表转换为字典。我可以通过使用循环中的每个元素并一个一个地附加到一些新列表来简单地使用 for 循环来做到这一点。

但是,我想在不使用循环来防止性能问题的情况下实现相同的目标。有没有办法做到这一点?

预期输出:

[{'ID' : '111', 'Name' : 'Kam'},{'ID' : '222', 'Name' : 'Van'}]
Run Code Online (Sandbox Code Playgroud)

iz_*_*iz_ 5

您可以使用列表理解:

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

result = [dict(zip(Header, row)) for row in lst]
print(result)
Run Code Online (Sandbox Code Playgroud)

输出:

[{'ID': '111', 'Name': 'kam'}, {'ID': '222', 'Name': 'Van'}]
Run Code Online (Sandbox Code Playgroud)