Python, aiogram, Inlinekeyboard как поймать обработчик нажатой кнопки

Всем доброго времени, сделал календарь на месяц, в Телеграм боте, вывожу кнопки через цикл.

button_week_day=[InlineKeyboardButton(text=y, callback_data='1') for y in list_day_week]

заранее подготовив список дней в месяце.

list_11 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
               29, 30]

вопрос, как мне отследить callback_data нажатой кнопки?


Ответы (1 шт):

Автор решения: Gosha Pavlenko

Вот как можно вписать callback_data в кнопку из list_11:

buttons = []
for i in range(len(list_11)):
    if i < len(list_day_week):  # Проверяем, что индекс не выходит за пределы list_day_week
        button = InlineKeyboardButton(text=list_day_week[i], callback_data=str(list_11[i]))
        buttons.append(button)

Таким образом, мы создаем инлайн-кнопку, где text берется из list_day_week, а callback_data — из list_11.

Теперь вы можете корректно доставать из callback_query.data значение из списка list_11 (я бы показал как это делать, но вы не указали какой библиотекой вы пользуетесь).

→ Ссылка