a = {'foo': 'bar', 'baz': 'bazbaz'}
b = {'foo': 'baz'}

def concatd(*dicts):
    if not dicts:
        return {}
fst = dicts[0]
return {k: ''.join(d.get(k, '') for d in dicts) for k in fst}
print(concatd(a, b))
c = {'foo': '**not more foo!**'}
print(concatd(a, b, c))
Python – объединить два словаря, объединить строковые значения?