Просьба сильно не ругать. Делаю первого бота и застрял на одном месте.
Есть словарь, ключ(город) должна быть кнопкой. В зависимости от того, на какую кнопку(ключ) нажали, бот должен отправлять значение из словаря. Но не могу разобраться, как именно получить значение выбранной кнопки.
Собственно вопрос: как получить значение выбранной кнопки(name_project_btn) и передать в следующий handler?
data = {'Москва': {'1546949': 211.0}}
# Создание кнопок
@bot.message_handler(commands=['start'])
def start_programm(message):
keyboard = telebot.types.InlineKeyboardMarkup()
for name_project_btn in data:
key = telebot.types.InlineKeyboardButton(
text=name_project_btn, callback_data='get_mark')
keyboard.add(key)
bot.send_message(message.from_user.id, text='Выберите проект',
reply_markup=keyboard)
# Получение значения копки(ключа словаря)
@bot.callback_query_handler(func=lambda call: True)
def callback_btn(call):
if call.data == 'get_mark':
bot.answer_callback_query(call.id, text="Проект выбран")
# Получение ответа(баллов)
@bot.message_handler(content_types=['text'])
def get_id(id_msg):
ids = int(id_msg.text)
ans = f"Количество баллов - {data['Москва'][ids]}"
bot.send_message(id_msg.chat.id, ans)