以字典名称作为子键按键合并字典

Merge dictionaries by key with dictionary names as subkeys

我正在寻找一种简短的 pythonic 方式来按键合并两个(三个,n)个字典。关于合并或附加字典有几个问题,但在这里我正在寻找当它们的键相等时将一个值附加到另一个值。我所有的词典都有完全相同的一组键。

dic0 = {'Amsterdam': 0, 'Berlin': 5, 'London': 7}
dic1 = {'Amsterdam': 1, 'Berlin': 7, 'London': 8}

期望的输出:

combined_dict = {'Amsterdam': {'dic0': 0, 'dic1':1}, 'Berlin': {'dic0': 5, 'dic1':7}, 'London': {'dic0': 7, 'dic1':8}}

我可以通过

实现
combined_dict = {}
for key in dic0.keys():
    combined_dict[key] = {}
    combined_dict[key]['dic0'] = dic0[key]
    combined_dict[key]['dic1'] = dic1[key]

但这似乎很难扩展。作为第一步,我什至连字典的名字都没有得到。

这适用于字典名称列表,例如 dicts = ['dic0', 'dic1']

combo = {k: {i: eval(i)[k] for i in dicts} for k in eval(dicts[0]).keys()}