title: Is there a difference between 'and' and '&' with respect to python sets?
body: <p>I got very good help for question <a href="https://stackoverflow.com/questions/16693779/check-if-dictionary-key-has-empty-value">check if dictionary key has empty value</a> . But I was wondering if there is a difference between <code>and</code> and <code>&amp;</code> in python? I assume that they should be similar? </p>
  
  <pre><code>dict1 ={"city":"","name":"yass","region":"","zipcode":"",
     "phone":"","address":"","tehsil":"", "planet":"mars"}
  
  whitelist = {"name", "phone", "zipcode", "region", "city",
               "munic", "address", "subarea"}
  
  result = {k: dict1[k] for k in dict1.viewkeys() &amp; whitelist if dict1[k]}
  </code></pre>