删除一级键并组合其值

时间:2019-03-07 02:55:36

标签: python dictionary

我有一个嵌套的字典,如下所示:

{
    'firstA': {0: {'textA': [1, 2, 3]}},
    'firstB': {1: {'textB': [79, 89]}}
}

并且我正在尝试剥离/移除第一级按键,以便输出为:

{
    0: {'textA': [1, 2, 3]},
    1: {'textB': [79, 89]}
}

我在线检查了可以尝试使用dict1.update(dict2)的地方,但这似乎仅在我只有2个单独的字典开头的情况下适用。

虽然我可以使用以下内容:

for k, v in my_dictionary:
    print v

这似乎让我得到了想要的东西,但是如何从那里合并/合并它们呢?或者,当我有两个以上的一级键时-例如。 firstC...

2 个答案:

答案 0 :(得分:0)

您可以使用嵌套字典理解:

d = {'firstA': {0: {'textA': [1, 2, 3]}}, 'firstB': {1: {'textB': [79, 89]}}}
result = {a:b for i in d.values() for a, b in i.items()}

输出:

{0: {'textA': [1, 2, 3]}, 1: {'textB': [79, 89]}}

答案 1 :(得分:0)

IIUC

for i, v in enumerate(d.items()):
    if i==0:
        yourd=v[1]
    else :
        yourd.update(v[1])
yourd
{0: {'textA': [1, 2, 3]}, 1: {'textB': [79, 89]}}