List 从多个列表(字符串列表、列表列表)创建字典

List 从多个列表(字符串列表、列表列表)创建字典,list,python-3.x,dictionary,zip,List,Python 3.x,Dictionary,Zip,我有几个相同长度的列表,我想合并成一个“主词典”。大多数由字符串组成,而一个是列表列表。例如 directories = ['\\folder1', '\\folder2', '\\folder3'] tables = ['ABC', 'ABC', 'XYZ'] cohort = ['IN', 'OUT', 'IN'] variables = [[var1, var2, var3], [var1, var2, var3, var4, var5], [var1, var2]] 我希望输出为: d

我有几个相同长度的列表,我想合并成一个“主词典”。大多数由字符串组成,而一个是列表列表。例如

directories = ['\\folder1', '\\folder2', '\\folder3']
tables = ['ABC', 'ABC', 'XYZ']
cohort = ['IN', 'OUT', 'IN']
variables = [[var1, var2, var3], [var1, var2, var3, var4, var5], [var1, var2]]
我希望输出为:

dictionary = {'\\folder1': ('ABC', 'IN', [var1, var2, var3]),
              '\\folder2': ('ABC', 'OUT', [var1, var2, var3, var, var5]),
              '\\folder3': ('XYZ', 'IN', [var1, var2])}
我尝试过,但不想(b/c它会创建一些复杂的嵌套元组):


史蒂文,谢谢你回答这个问题:

d = dict(zip(directories, zip(tables, cohort, variables)))

您的
词典
无效:您定义了两次
'IN'
键。所以你不能构造这样一个字典。
'ABC','IN',[var1,var2,var3]
应该是元组吗?否则,这不是有效的词典。如果是这样,那么您有1个过多的
zip
d=dict(zip(目录,zip(表,队列,变量)))
我希望键来自列表“目录”。其他三个列表:表、队列、变量都应该是值(因此可以是非唯一的)。('ABC','IN',[var1,var2,var3)是一个元组-谢谢你指出这一点-我会编辑的!刚刚尝试了你的解决方案,史蒂文。它现在起作用了-谢谢!
d = dict(zip(directories, zip(tables, cohort, variables)))