连接词典

pyt*_*ate 6 python merge dictionary key

我有三个列表,第一个是名单列表,第二个是字典列表,第三个是数据列表.列表中的每个位置对应于其他列表中的相同位置.List_1 [0]在List_2 [0]和List_3 [0]等中有相应的数据.我想将这三个列表转换为字典中的字典,List_1中的值是主键.如何在保持一切正常的同时做到这一点?

bal*_*pha 13

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [7,8,9]
>>> dict(zip(a, zip(b, c)))
{1: (4, 7), 2: (5, 8), 3: (6, 9)}
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅文档zip.

正如Lionbest在下面指出的那样,您可能希望查看itertools.izip()输入数据是否很大.izip基本上做同样的事情zip,但它创建迭代器而不是列表.这样,在创建字典之前不会创建大型临时列表.

  • 如果a,b,c将是巨大的,我推荐来自itertools模块的izip. (5认同)