从两个列表中初始化字典的键和值

40

我已经阅读了这个链接

但是如何初始化字典呢?

比如说有两个列表:

 keys = ['a','b','c','d'] 
 values = [1,2,3,4] 
 dict = {}

我想用keysvalues初始化一个dict


3
如果你真的读了问题,就会发现那里展示的代码解决了你的问题。 - Björn Pollex
如何在 dict.fromkeys(a,b) 中将 b 作为列表传递? - Jibin
你不需要,但是在问题的结尾,OP展示了代码dict(zip(keys, [None]*len(keys))),其本质上与你在这里所接受的答案相同([None]*len(keys)构建一个包含len(keys)None的列表)。 - Björn Pollex
2个回答

97
d = dict(zip(keys, values))
请不要把你的字典命名为dict,因为那是一个内置的名称。

20
在Python 2.7和Python 3中,你也可以使用字典推导式。
d = {key:value for key, value in zip(keys, values)}

虽然有些啰嗦,但我发现这样更清晰,因为你可以清楚地看到关系。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接