locals3 = {'d': {(1): 'x', (2): 'y', (3): 'z'}, 'test': 3}
globals3 = dict(list(globals().items()) + [('d', {(1): 'a', (2): 'b', (3): 'c'}),
    ('test', 2)])
понимание словаря python в exec использует глобальные переменные вместо локальных