从两个列表制作字典

时间:2016-12-27 06:57:14

标签: python django

我有两个列表

l1 = ['cat','dog']
l2= [1,2]

现在我想制作一个这样的字典:

dict { {'name':cat,'id'=1}{'name':dog,'id'=2}}

我正在使用zip,但这并不符合我的要求。

2 个答案:

答案 0 :(得分:6)

result = [{'name': name, 'id': id} for (name, id) in zip(l1, l2)]

对于容器而言,所有单个dicts都是dict是没有意义的(除非你想要键入它,比如id)。

答案 1 :(得分:3)

如果你有很多钥匙而且你不想创建dict理解并宣告什么在哪里。

l1 = ['cat','dog']
l2= [1,2]
[dict(zip(['name', 'id'], el)) for el in zip(l1,l2)]

输出:

[{'id': 1, 'name': 'cat'}, {'id': 2, 'name': 'dog'}]