title: Merge two dictionaries and persist the values of first dictionaries
body: <p>I have two dictionaries:</p>
  
  <pre><code>first = {"phone": {
                  "home": "(234) 442-4424"
              },
           "address":"xyz" 
              }
  
  
  second = {"phone": {
                  "home": "(234) 442-4424",
                  "home1": "(234) 442-4424"
              },
           "address":{} 
              } 
  </code></pre>
  
  <p>I want merge two dictionaries first over second, meaning the first dictionary doesn't lose its previous values and only the missing key values are added into first.</p>
  
  <p>The final dictionary should look like this:</p>
  
  <pre><code>final = {"phone": {
                  "home": "(234) 442-4424",
                  "home1": "(234) 442-4424"
              },
           "address":"xyz" 
              } 
  </code></pre>
  
  <p>Also what if when we use list of dictionaries like : -</p>
  
  <pre><code>    first = {"phone": {
                  "home": "(234) 442-4424"
              },
           "address":[{"home":""},{"office":""}]
              }
  </code></pre>