title: Create new dictionory based on existing dictionories python
body: <p>I have two dictionaries as following</p>
  <pre><code>    d1 = {
  'k1':[4,31,21],
  'k2':[31,41,51],
  'k3':[91,10,111]
  }
  
  d2 = {
  'l1':11,
  'l2':'21',
  'l3':'31',
  'l4':41
  }
  </code></pre>
  <p>I want to return a new dictionary under the following conditions</p>
  <ul>
  <li>if the values of the d1 dictionary are present in the value of the d2 dictionary
  then I need to return a new dictionary with d1's key and d2's key.</li>
  </ul>
  <p>for the above case, I need to return the following d3 dictionary</p>
  <pre><code>d3 = { k1=[l2,l3],k2=[l3,l4]}
  </code></pre>
  <p>here is what I have tried</p>
  <pre><code>  d3={}
    
    for key, val in d1.items():
      for x in val:
  
          if str(x) in d2:
              tmp = new_dict[str(x)]
              lst = d3[key] if key in d3 else list()
              lst.append(tmp)
              d3[key] = lst
  </code></pre>