D = {'keyA': {'keyB': {'keyC': 42, 'keyD': 13}, 'keyE': 55}}

def remove_path(dictionary, path):
    for node in path[:-1]:
        dictionary = dictionary[node]
del dictionary[path[-1]]
remove_path(D, ['keyA', 'keyB', 'keyD'])
print(D)
Subtract dict A from dict B (deep del)?