Обновление значения вложенного словаря различной глубины

| | | | | | |

Я ищу способ обновить словарь dict1 содержимым обновления dict без перезаписи уровня A

dictionary1={"level1":{"level2":{"levelA": 0,"levelB":1}}} update={"level1":{"level2":{"levelB":10}}} Dictionary1.update(обновление) print Dictionary1 {"level1": {"level2": { "levelB": 10}}} 

Я знаю, что при обновлении удаляются значения на уровне level2, потому что обновляется самый низкий ключ level1.

Как мне решить эту проблему? , учитывая, что словарь1 и обновление могут иметь любую длину?