How to get a random number between a float range?

Solution 1:

Use random.uniform(a, b):

>>> random.uniform(1.5, 1.9)
1.8733202628557872

Solution 2:

if you want generate a random float with N digits to the right of point, you can make this :

round(random.uniform(1,2), N)

the second argument is the number of decimals.

Solution 3:

random.uniform(a, b) appears to be what your looking for. From the docs:

Return a random floating point number N such that a <= N <= b for a <= b and b <= N <= a for b < a.

See here.