title: Why does calling n^2 for numbers in a range produce the results out of order?
body: <pre><code>&gt;&gt;&gt; nums = {n**2 for n in range(10)}
  &gt;&gt;&gt; nums
  {0, 1, 64, 4, 36, 9, 16, 49, 81, 25}
  </code></pre>
  
  <p>I dont get why the numbers are out of order? Should it not be {0, 1, 4, 9...}?</p>