我需要合并多个词典,这是我的例子:
dict1 = {1:{"a":{A}}, 2:{"b":{B}}}
dict2 = {2:{"c":{C}}, 3:{"d":{D}}
Run Code Online (Sandbox Code Playgroud)
随着A B C与D树的叶,像{"info1":"value", "info2":"value2"}
字典有一个未知的级别(深度),它可能是 {2:{"c":{"z":{"y":{C}}}}}
在我的例子中,它代表一个目录/文件结构,其中节点是docs并且是文件.
我想合并它们以获得:
dict3 = {1:{"a":{A}}, 2:{"b":{B},"c":{C}}, 3:{"d":{D}}}
Run Code Online (Sandbox Code Playgroud)
我不确定如何使用Python轻松完成这项工作.
我有多个dicts /键值对,如下所示:
d1 = {key1: x1, key2: y1}
d2 = {key1: x2, key2: y2}
Run Code Online (Sandbox Code Playgroud)
我希望结果是一个新的dict(如果可能的话,以最有效的方式):
d = {key1: (x1, x2), key2: (y1, y2)}
Run Code Online (Sandbox Code Playgroud)
实际上,我希望结果d是:
d = {key1: (x1.x1attrib, x2.x2attrib), key2: (y1.y1attrib, y2.y2attrib)}
Run Code Online (Sandbox Code Playgroud)
如果有人告诉我如何获得第一个结果,我可以弄清楚其余部分.
我试图合并以下python词典如下:
dict1= {'paul':100, 'john':80, 'ted':34, 'herve':10}
dict2 = {'paul':'a', 'john':'b', 'ted':'c', 'peter':'d'}
output = {'paul':[100,'a'],
'john':[80, 'b'],
'ted':[34,'c'],
'peter':[None, 'd'],
'herve':[10, None]}
Run Code Online (Sandbox Code Playgroud)
有没有一种有效的方法来做到这一点?
我有以下格式的词典列表:
foo = [
{'a': 'x', 'b': 'y', 'c': 'z'},
{'a': 'j', 'c': 'z'}
]
Run Code Online (Sandbox Code Playgroud)
我想将此字典列表分组为一个字典,例如:
bar = {
'a': ['x', 'j'],
'b': ['y', None],
'c': ['z', 'z']
}
Run Code Online (Sandbox Code Playgroud)
我目前正在做的是,遍历所有字典foo并创建键列表,然后再次遍历相同的键来创建bar。我想知道是否有更简单的方法来完成此任务。有人可以帮忙吗?
我有以下 2 个要合并的字典。我想合并相同的键,并且我想保留两个字典的值。我用过,dict1.update(dict2)但它取代了从第二到第一字典的值。
u'dict1', {160: {u'na': u'na'}, 162: {u'test_': u'qq', u'wds': u'wew'}, 163: {u'test_env': u'test_env_value', u'env': u'e'}, 159: {u'no' : u'test_no'}
u'dict2', {160: {u'naa': u'na'}, 162: {u'envi_specs': u'qq', u'wds': u'wew'}, 163: {u'test_env': u'test_env_value', u'ens': u's'}}
Run Code Online (Sandbox Code Playgroud)
我得到了什么?
{160: {u'naa': u'na'}, 162: {u'envi_specs': u'qq', u'wds': u'wew'}, 163: {u'test_env': u'test_env_value', u'ens': u's'}}
Run Code Online (Sandbox Code Playgroud)
我需要的
{160: {u'naa': u'na', u'na': u'na'}, 162: {u'envi_specs': u'qq', u'wds': u'wew', u'test_': u'qq'}, 163: {u'test_env': u'test_env_value', u'ens': u's', u'env': u'e'}}
Run Code Online (Sandbox Code Playgroud)
我遵循了合并“几个”python 词典的步骤,但我有两个不同的词典需要合并。请帮忙...
如果输入是,我怎么能将三个不同的字典集合到新的字典中
d1 = {'name':'tom', 'age':'14', 'sex':'m'}
d2 = {'color':'w', 'weight':'58','style':'good'}
d3 = {'sports':'cricket','music':'rock','dance':'disco'}
Run Code Online (Sandbox Code Playgroud)
输出应该是d = {'name':'tom', 'age':'14', 'sex':'m','color':'w', 'weight':'58','style':'good','sports':'cricket','music':'rock','dance':'disco'}
我尝试使用更新方法,它只适用于两个字典,如果我使用3设置它会导致重复,那么如何将三个字典合并为单个字典