title: Find differences between two Python objects
body: <p>Is there a way in Python to find the differences between two objects of the same type, or between two objects of any type?  By differences I mean the value of one of their properties is different, or one object has a property that the other doesn't.  So for example:</p>
  
  <pre><code>dog.kingdom = 'mammal'
  dog.sound = 'bark'
  
  cat.kingdom = 'mammal'
  cat.sound = 'meow'
  cat.attitude = 'bow to me'
  </code></pre>
  
  <p>In this example, I'd want to know that the <code>sound</code> property is different, and the <code>attitude</code> property is only in <code>cat</code>.</p>
  
  <p>The use case for this is I'm trying to override some default behavior in a library, and I'm setting up an object different than the library is but I don't know what.</p>