【发布时间】:2018-12-20 14:55:27
【问题描述】:
我有三个列表:
z1 = ['A', 'A', 'B', 'B']
z2 = ['k1', 'k2', 'k1', 'k2']
z3 = ['v1', 'v2', 'v3', 'v4']
当我写的时候:
print(dict(zip(z2, z3)))
这是我的输出:
{'k2': 'v4', 'k1': 'v3'}
我希望这样:
{'A':{'k1': 'v1', 'k2': 'v2'} , 'B':{'k1': 'v3', 'k2': 'v4'}}
您能告诉我如何获得预期的结果吗?
【问题讨论】:
-
@akozi 我猜这是因为 OP 的“尝试”并不是真正的解决方案尝试。
-
您的问题是“为什么
dict(zip(z2, z3))没有产生所需的输出”还是“如何产生所需的输出”? -
这个问题在最后一行很明显地说明了。我愿意假设 OP 知道可以以某种方式将列表压缩在一起以创建 dict,但无法弄清楚如何处理嵌套方面。
-
如果是重复的就很难找到了。
-
@chepner 是的,我知道我可以压缩列表,但我只是认为它只适用于 2 个列表。
标签: python list dictionary