私はpytelegrambotapiで簡単なゲームを構築しています。ルールに従って、ユーザーには定義とテキストとして単語を含む 4 つのボタンが送信されます。そのうちの 1 つが正しいものです。次に、ユーザーは右ボタンを押す必要があります。次に、別のルーチンがユーザーの回答を正しい回答と比較します。ユーザーが押したボタンの値を取得するにはどうすればよいですか?
import telebot
from telebot import types
TOKEN = 'XXXXXXXXXXXXXXXXX'
bot = telebot.TeleBot(TOKEN)
kb = types.InlineKeyboardMarkup(row_width=2)
words = {
'Meager' : 'Lacking in quantity',
'Asylum' : 'Shelter',
'Irk' : 'To annoy',
'Kudos' : 'Great glory'
}
def compare(message, word, definition):
if definition == words[word]:
bot.send_message(message.from_user.id, 'Correct!')
else:
bot.send_message(message.from_user.id, 'Wrong!')
for item in words.items():
kb.add(types.InlineKeyboardButton(item[0], callback_data = item[0]))
@bot.message_handler(commands=['start', 's'])
def post_random_article(message):
word = 'Meager'
bot.send_message(message.from_user.id, word, reply_markup = kb)
bot.polling()