title: python XOR for two integers
body: <p>Coming from a Java background into Python and working my way through CodingBat (<em>Python</em> > <em>Warmup-1</em> > <em>pos_neg</em>) the following confused me greatly:</p>
  
  <pre><code>    &gt;&gt;&gt; True ^ False 
      True 
      &gt;&gt;&gt; 1&lt;0 ^ -1&lt;0 
      False 
  </code></pre>
  
  <p>I appreciate the following:</p>
  
  <pre><code>    &gt;&gt;&gt; (1&lt;0) ^ (-1&lt;0)
      True
  </code></pre>
  
  <p>But what is python interpreting <code>1&lt;0 ^ -1&lt;0</code> as to return false?</p>