@dof1shd

Как сделать рандом в питоне?

Мне для бота в питоне нужен рандом. там где например выпадает число 1.23. мне нужно именно десятичная дробь и чтобы после точки были только 2 цифры. диапазон цисел от 1.00 до 5.00. пытался сам сделать выдает большую десятичную дробь например - 3.321343467789328123.
  • Вопрос задан
  • 191 просмотр
Пригласить эксперта
Ответы на вопрос 3
Maksim_64
@Maksim_64
Data Analyst
import random
round(random.uniform(1,5),2)

Это будет выдавать десятичную дробь в диапазоне от 1 до 5, с двумя цифрами после запятой.

(ОТРЕДАКТИРОВАНО) после небольшой проверки выяснилось что данный код иногда (редко будет выдавать) числа такие 1.1 или 2.3 что бы избежать этого написал вот такую функция которая всегда будет выдать случайное число с двумя цифрами после запятой.
import random
def get_random(a=1,b=5):
    while True:
        number = round(random.uniform(a,b),2)
        if len(str(number).split('.')[1]) == 1:
            continue
        else:
            return number
Ответ написан
mayton2019
@mayton2019
Bigdata Engineer
Ты мог генерить целые случайные числа в диапазоне от 100 до 500 и потом сдвигать запятую влево на 2 знака.

А вот фильтровать все которые не равны целым величинам ... эээ такое себе. Ты не получишь линейное распределение вероятностей. Короче это уже не рандом. Лохотрон.
Ответ написан
@HoPHP
import random

number = random.randint(100, 500)
result = number / 100
print(result)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы