title: Python: Bitwise OR between integers
body: <p>I am seeing a strange behavior in python when performing bitwise operations</p>
  
  <pre><code>&gt;&gt;&gt; bin(4)
  '0b100'
  &gt;&gt;&gt; bin(9)
  '0b1001'
  &gt;&gt;&gt; bin(9^4)
  '0b1101'
  </code></pre>
  
  <p>Above I see the expected behavior for the OR, the numbers are aligned on the right and each bit is ORed  generating the result. However, when I OR two identical integers, the result is always 0 when it should be the number, in my opinion.</p>
  
  <pre><code>&gt;&gt;&gt; bin(9^9)
  '0b0'
  </code></pre>
  
  <p>Is this a bug or a very strange feature? Can anyone explain?</p>