d1 = {'x': 'a', 'y': 'b', 'z': 'c'}
d2 = {'z': 'c', 'w': 'r'}
d3 = {'z': 'd', 'w': 'r'}

def dict_merge(d1, d2):
    """docstring for merge"""
if len(d1.keys() & d2) != len(d1.items() & d2.items()):
    return {}
else:
    result = dict(d1, **d2)
return result
if __name__ == '__main__':
    pass
Merging two dicts in python with no duplication permitted