如何将字典列表附加到字典中键的值?

How to append a list of dictionaries to the value of a key in a dictionary?

例如:

list1 = [{'vehicle': {'bmw': 2, 'cus': 'mr x', 'extra': 'he is awesome'}}, 
        {'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}}]

print(list1)

[{'vehicle': {'bmw': 2, 'cus': 'mr x', 'extra': 'he is awesome'}},
{'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}}]

final_ds_dict={}

final_ds_dict.update({'datasets': {'training': list1}})

print(final_ds_dict)

我得到的输出如下:

{'datasets': {'training': [{'vehicle': {'bmw': 2,
     'cus': 'mr x',
     'extra': 'he is awesome'}},
   {'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}}]}}

但是,我不会将其附加为列表。

所需的输出应如下所示:

{'datasets': {'training': {'vehicle': {'bmw': 2,
     'cus': 'mr x',
     'extra': 'he is awesome'}},
   {'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}}}}

有人可以帮忙解决这个问题吗?

您可以使用带有 dict 的列表理解来形成内部字典:

list1 = [{'vehicle': {'bmw': 2, 'cus': 'mr x', 'extra': 'he is awesome'}}, 
    {'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}}]
result = {'datasets':dict(i for b in list1 for i in b.items())}

输出:

{'datasets': 
    {'vehicle': {'bmw': 2, 'cus': 'mr x', 'extra': 'he is awesome'}, 
     'fruit': {'mango': 2, 'color': 'gelb', 'extra': 'king of fruits'}
    }
}