Найти - Пользователи
Полная версия: Работа с telebot.Помощь с кодом
Начало » Python для новичков » Работа с telebot.Помощь с кодом
1
Daniil_unknown
Здравствуйте,возникла проблемка.Решил попробовать написать бота,захотел добавить команду /Game,при которой бот присылает список цветов и предлагает пользователю выбрать один из них.Пользователь выбирает и если совпадает с тем ,что нарандомил random_color,то бот присылает сообщение,что пользоваетль угадал или же не угадал.Но бот после написания пользователем команды /Game принимает ее же, как за выбранный цвет и присылает сообщение,что пользователь не угадал.Кто знает в чем проблемка,подскажите как ее решить,буду благодарен.
 import pyowm
import random2
import telebot
from time import sleep
from random import choice
@bot.message_handler(commands =['Game'] )
def game(message):
    bot.send_message(message.chat.id, "Введите ваш цвет(список:Зеленый Желтый Красный Синий)")
    colors = ['Желтый', 'Зеленый', 'Красный', 'Синий']
    random_color = (choice(colors)).lower()
    color_user = message.text.lower()
    if color_user == random_color:
        bot.send_message(message.chat.id, 'Ты угадал!Цвет был ' + random_color)
    else:
        bot.send_message(message.chat.id,'Ты не угадал!Цвет был ' + random_color)
py.user.next
Используй теги code для передачи кода.
[code python]
вот здесь код пиши
[/code]
py.user.next
Daniil_unknown
Но бот после написания пользователем команды /Game принимает ее же, как за выбранный цвет и присылает сообщение,что пользователь не угадал.
Видимо, нужно использовать память. В памяти запоминаешь, что такой-то пользователь начал игру, и после этого запрашиваешь у него цвет следующим сообщением к нему. После того, как этот запомненный пользователь прислал ответ в виде слова, ты сравниваешь его ответ с выпавшим и запомненным для этого пользователя цветом, выводишь этому пользователю результат и удаляешь этого пользователя из памяти. Так несколько пользователей могут играть с ботом в несколько разных игр параллельно и бот этих пользователей не перепутает.
xam1816
Daniil_unknown
в чем проблемка

вот здесь бот у тебя реагирует на сообщение с текстом /Game
 @bot.message_handler(commands =['Game'] )

а где у тебя код,где бот реагирует на сообщение с названием цвета?

если не понимаешь о чем я говорю,то можешь найти код в интернете и сделать ctrl+c, ctrl+v, потому что о программировании от начала тебе тут долго рассказывать
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB