답변:
random.uniform (a, b) 사용하십시오 .
>>> random.uniform(1.5, 1.9)
1.8733202628557872
Returns a random floating point number N such that a <= N <= b for a <= b and b <= N <= a for b < a
출력 N
은 input a
과 같을 수 있습니다 b
. 이 경우 1.5
및 1.9
.
.uniform
함수 를 사용하지 않고 .random
또는 대신 또는 을 사용하여이를 수행하는 다른 방법이 randrange
있습니까?
1.5 + random.random() * (1.9 - 1.5)
는 사양에 따르면 정확하게 1.9
(이론적으로조차도) 결코 반환하지는 않지만 그렇게해야합니다 .
uniform(a, b)
로서 구현 a + (b-a) * random()
리턴 라운딩에 따른 범위 [A, B) 또는 [A, B]에서 난수를 github.com/python/cpython/blob/...
오른쪽에 N 자리의 임의의 부동 소수점을 생성하려면 다음과 같이하십시오.
round(random.uniform(1,2), N)
두 번째 인수는 소수점 이하 자릿수입니다.
np.random.uniform(start, stop)
또는np.random.uniform(start, stop, samples)
여러 샘플을 원한다면. 그렇지 않으면 아래 답변이 가장 좋습니다.