title: The best way to merge multi-nested dictionaries in Python 2.7
body: <p>I have two nested dictionaries and I want to merge them into one (where second dict overrides first dict values). I saw a lot of beautiful solutions for merging "flat" (not nested) dictionaries, e.g.:</p>
  
  <pre><code>dict_result = dict1.copy()
  dict_result.update(dict2)
  </code></pre>
  
  <p>or</p>
  
  <pre><code>dict_result = dict(dict1.items() + dict2.items())
  </code></pre>
  
  <p>or (my favorit one)</p>
  
  <pre><code>dict_result = dict(d1,**d2)
  </code></pre>
  
  <p>but couldn't find the most efficient way to merge multi-nested dicts.</p>
  
  <p>I'm trying to avoid recursion. What is your proposition?</p>