Python3列表到字典

Python3列表到字典,python,python-3.x,list,dictionary,merge,Python,Python 3.x,List,Dictionary,Merge,我有三个列表,我想用它们建立一个字典: a = [a,b,c] b = [1,2,3] c = [4,5,6] 我希望: {'a':1,4, 'b':2,5, 'c':3,6} 我现在能做的就是: {'a':1,'b':2, 'c':3} 我该怎么办?检查以下内容: 我建议先压缩b和c列表,然后使用zip再次将它们映射到字典中: a = ['a','b','c'] b = [1,2,3] c = [4,5,6] vals = zip(b,c) d = dict(zip(a,va

我有三个列表,我想用它们建立一个字典:

a = [a,b,c]  
b = [1,2,3]  
c = [4,5,6]  
我希望:

{'a':1,4, 'b':2,5, 'c':3,6}
我现在能做的就是:

{'a':1,'b':2, 'c':3}
我该怎么办?

检查以下内容: 我建议先压缩b和c列表,然后使用zip再次将它们映射到字典中:

a = ['a','b','c']
b = [1,2,3]
c = [4,5,6]
vals = zip(b,c)
d = dict(zip(a,vals))
print(d)
您可以尝试以下方法:

a = ["a","b","c"] 
b = [1,2,3]  
c = [4,5,6]  

new_dict = {i:[j, k] for i, j, k in zip(a, b, c)}
from collections import OrderedDict

d = OrderedDict()

for i, j, k in zip(a, b, c):
    d[i] = [j, k]
输出:

{'b': [2, 5], 'c': [3, 6], 'a': [1, 4]}
如果确实需要排序结果,可以尝试以下方法:

a = ["a","b","c"] 
b = [1,2,3]  
c = [4,5,6]  

new_dict = {i:[j, k] for i, j, k in zip(a, b, c)}
from collections import OrderedDict

d = OrderedDict()

for i, j, k in zip(a, b, c):
    d[i] = [j, k]
现在,您有了一个OrderedDict对象,其中的键按字母顺序排序

a = ['a','b','c']  
b = [1,2,3]  
c = [4,5,6] 

result = { k:v  for k,*v in zip(a,b,c)}
结果

print(result)

您期望的输出不是有效的文本。是否要将值设置为列表?尝试搜索。您应该更正列表a的创建,您是指一些字符串文字而不是a、b、c吗?是否希望每个键都使用tuple()或list[]作为值?您预期的结果既不像python字典,也不像任何python对象。您自己尝试过什么?请阅读《谢谢nio》并尽可能复制。这正是我需要的。事实上,我已经尝试压缩2个列表,但我得到了。我无法打印它们。有趣的是,我一直在一起工作。你能解释一下你的代码吗?为什么它能解决这个问题?只有代码的答案通常没有多大帮助。