@yedkey

Хочу чтобы бот выдавал рандомные числа когда пользователь введет свое как сделать random.choice не помогает?

import telebot
from telebot import types
import random
import time
from random import choice
TOKEN = 'токен'

bot = telebot.TeleBot(TOKEN)

@bot.message_handler(commands=['start'])
def start(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard = True)
item1 = types.KeyboardButton('Погода в Инзе')
item2 = types.KeyboardButton('Новости Инзы')
item3 = types.KeyboardButton('Игра в числа')
markup.add(item1, item2, item3)

bot.send_message(message.chat.id, "Привет {0.first_name}!" .format(message.from_user), reply_markup = markup)

number = ['1', '2', '3', '4', '5', '6']

@bot.message_handler(content_types=['text'])
def bot_message(message):
if message.text == 'Погода в Инзе':
bot.send_message(message.chat.id, 'https://www.gismeteo.ru/weather-inza-4427/3-days/')
elif message.text == 'Новости Инзы':
bot.send_message(message.chat.id, 'https://vk.com/inzaru' )
elif message.text == 'Игра в числа':
bot.send_message(message.chat.id, 'Введи число от 1 до 6')
elif message.text == '1':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
elif message.text == '2':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
elif message.text == '3':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
elif message.text == '4':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
elif message.text == '5':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
elif message.text == '6':
bot.send_message(message.chat.id, 'Мое число:', random.choice(number))
else:
bot.send_message(message.chat.id, 'Я не понимаю' )

bot.polling(none_stop = True)
  • Вопрос задан
  • 155 просмотров
Решения вопроса 1
desaki
@desaki
пишу ботов для телеги
Скорее будет правильно так:
bot.send_message(message.chat.id, f"Мое число: {choice(number)}")

Объясню почему просто choice: В начале кода вы импортировали его, но пишите random.choice, это неправильно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы