@duduychvbk99

Бот не отвечает. Что делать?

if message.text == " Открыть ящик":
                        bot.send_message(message.chat.id, "<b>Открывается...</b>", parse_mode="html", reply_markup=deleted)
                        time.sleep(2)
                        ListOfPrize = 'nothing', 'whybaby', 'holdik', 'fooflik', 'nver4ikk'
                        prize = random.choices(ListOfPrize, weights=(100, 40, 40, 40, 1))
                        print(prize)
                        if prize == "nothing":
                            bot.send_message(message.chat.id, 'Ничего')
                        if prize == "whybaby":
                            bot.send_message(message.chat.id, 'Вайбейби')
                        if prize == "holdik":
                            bot.send_message(message.chat.id, 'Холди')
                        if prize == "nver4ikk":
                            bot.send_message(message.chat.id, 'Нверчи')


Бот просто не дает ответа. Использую telebot и random.
  • Вопрос задан
  • 93 просмотра
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
Вы даже в консоль выводите содержимое prize.
Метод random.choices возращает список, а не один элемент (на что немакает choices).

Так что
prize = random.choices(ListOfPrize, weights=(100, 40, 40, 40, 1))[0]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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