title: Does default memory allocated for a datatype play a role in rounding? In what manner a float is rounded if it exceeds allocated memory?
body: <p>Having a file test2.py with the following contents:</p>
  
  <pre><code>print(2.0000000000000003)    
  print(2.0000000000000002)
  </code></pre>
  
  <p>I get this output:</p>
  
  <pre><code>$ python3 test2.py  
  
  2.0000000000000004  
  2.0    
  </code></pre>
  
  <p>I thought lack of memory allocated for float might be causing this but 2.0000000000000003 and 2.0000000000000002 need same amount of memory.</p>