title: Getting closest to endpoints of (1,0) using np.random.uniform
body: <p>-Random numbers can be drawn on the interval (0, 1], i.e., including 1 using: </p>
  
  <pre><code>import numpy as np
  r = np.random.uniform(low=0.0, high=1.0, size=10)
  </code></pre>
  
  <p>I, however, want to generate numbers on the interval (0, 1), i.e., NOT including 1 and 0. Something like:</p>
  
  <pre><code>r = np.random.uniform(low=0.0, high=1.0 - 2**-16, size=10)
  </code></pre>
  
  <p>Works, but how close can I theoretically get to 1 and 0, and is there a way to ensure that I can get as close to 1 as to 0?                    </p>