[英]Combining a list and multiple dictionaries to nested dictionary - python
我想从一个列表中创建一个嵌套字典,该列表应该是作为嵌套字典值的键和字典。
输入:
l = [key1, key2, key3]
d1 = {string11:value11, string12:value12, string13:value13}
d2 = {string21:value21, string22:value22, string23:value23}
d3 = {string31:value31, string32:value32, string33:value33}
Output:
{key1 : {string11:value11, string12:value12, string13:value13}, key2 : {string21:value21, string22:value22, string23:value23}, key3 : {string31:value31, string32:value32, string33:value33}}
到目前为止,我尝试 zip 列表和字典,但这会创建另一个字典,而不是嵌套字典。
ld = dict(zip(l,d))
我需要先创建一个 d1,d2,d3 的列表吗? 那么如何将l
和字典列表结合起来呢?
是的,您需要先创建 d 列表
dict(zip(l, [d1, d2, d3]))
当您将字典作为迭代器传入时,它的值将被迭代(不包括键)。 因此,为什么dict(zip(l, d1))
将生成单个字典而不是嵌套字典。
有很多方法。 例如,您可以使用 dict 理解:
ld = {k: d for k, d in zip(l, [d1, d2, d3])}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.