Python numpy uint64 gets converted to float on division
<p>I wanted to do a simple integer division e.g. <code>1/3=0</code>, but <code>uint64</code> behaves very weirdly, resulting in my result being casted to float. Why?</p>

<pre><code>python&gt; uint64(100)/3
Out[0]: 33.333333333333336
python&gt; uint64(100)/uint64(3)
Out[1]: 33
python&gt; int64(100)/3
Out[2]: 33
python&gt; int64(100)/uint64(3)
Out[3]: 33.333333333333336
python&gt; int32(100)/int64(3)
Out[4]: 33
</code></pre>