如何在Python中使用两个列表创建字典?
如何在Python中使用两个列表创建字典?
这个问题在此已有答案:
x = ['1', '2', '3', '4'] y = [[1,0],[2,0],[3,0],[4,]]
我想创建一个字典,使得x和y值对应如下:
1: [1,0], 2: [2,0]
等等。
admin 更改状态以发布 2023年5月24日
在Python > 2.7中,你可以使用字典推导式:
>>> x = ['1', '2', '3', '4'] >>> y = [[1,0],[2,0],[3,0],[4,]] >>> mydict = {key:value for key, value in zip(x,y)} >>> mydict {'1': [1, 0], '3': [3, 0], '2': [2, 0], '4': [4]} >>>
仍然已经给出了最佳答案
dict(zip(x, y))
在Python <= 2.7中,如果你使用的是大型列表,你可以使用itertools.izip
,因为izip
返回一个迭代器。对于像你这样的小列表,使用izip
会过度。然而,请注意itertools.izip
在Python 3中已经被删除了。在Python 3中,zip
内置函数已经返回一个迭代器,因此不再需要izip
了。