title: Python - Find non mutual items in two dicts
body: <p>Lets say I have two dictionaries:</p>
  
  <pre><code>a = {'a': 1, 'b': 2, 'c': 3}
  b = {'b': 2, 'c': 3, 'd': 4, 'e': 5}
  </code></pre>
  
  <p>What's the most pythonic way to find the non mutual items between the two of them such that for <code>a</code> and <code>b</code> I would get: </p>
  
  <pre><code>{'a': 1, 'd': 4, 'e': 5}
  </code></pre>
  
  <p>I had thought: </p>
  
  <pre><code>{key: b[key] for key in b if not a.get(key)}
  </code></pre>
  
  <p>but that only goes one way (b items not in a) and</p>
  
  <pre><code>a_only = {key: a[key] for key in a if not b.get(key)}.items()
  b_only = {key: b[key] for key in b if not a.get(key)}.items()
  
  dict(a_only + b_only)
  </code></pre>
  
  <p>seams very messy.  Any other solutions?</p>