Update value of a nested dictionary of varying depth
<p>I'm looking for a way to update dict dictionary1 with the contents of dict update wihout overwriting levelA</p>

<pre><code>dictionary1={'level1':{'level2':{'levelA':0,'levelB':1}}}
update={'level1':{'level2':{'levelB':10}}}
dictionary1.update(update)
print dictionary1
{'level1': {'level2': {'levelB': 10}}}
</code></pre>

<p>I know that update deletes the values in level2 because it's updating the lowest key level1.</p>

<p>How could I tackle this, given that dictionary1 and update can have any length?</p>
