如何在Python中将两个列表组合成字典?
我有两个长度相同的清单:
[1,2,3,4]
和 [a,b,c,d]
我想在我有的地方创建字典 {1:a, 2:b, 3:c, 4:d}
最好的方法是什么?
-
dict(zip([1,2,3,4], [a,b,c,d]))
如果列表很大,则应使用
itertools.izip
。如果键的数量多于值,并且您想为额外的键填写值,则可以使用
itertools.izip_longest
。这里
a
,b
,c
,和d
是变量-它会正常工作(只要它们被定义),但你可能是指['a','b','c','d']
,如果你希望他们为字符串。zip
从每个可迭代对象中获取第一个项目,并生成一个元组,然后从每个迭代器中获取第二个项目,以此类推。dict
可以接受一个可迭代的可迭代对象,其中每个内部可迭代对象都有两个项目-然后使用第一个作为关键字,第二个用作每个项目的值。