Пытался сделать inline кнопки на aiogram но выдёт ошибку

Ошибка

Непонимаю в чём ошибка,Буду благодарен всем кто поможет с кодом

Вот часть кода

async def cmd_inline_url(message: types.Message):
    keyboard1 = types.InlineKeyboardMarkup()
    keyboard1.add(types.InlineKeyboardButton(text="Номер", callback_data="num1"))
    keyboard2 = types.InlineKeyboardMarkup()
    keyboard2.add(types.InlineKeyboardButton(text="Номер", callback_data="num2"))
    keyboard3 = types.InlineKeyboardMarkup()
    keyboard3.add(types.InlineKeyboardButton(text="Номер", callback_data="num3"))
    keyboard4 = types.InlineKeyboardMarkup()
    keyboard4.add(types.InlineKeyboardButton(text="Номер", callback_data="num4"))
    keyboard5 = types.InlineKeyboardMarkup()
    keyboard5.add(types.InlineKeyboardButton(text="Номер", callback_data="num5"))
    *и так до 34|and so on until 34*
    keyboards = [keyboard1, keyboard2, keyboard3, keyboard4, keyboard5, keyboard6, keyboard7, keyboard8, keyboard9, keyboard10, keyboard11, keyboard12, keyboard13, keyboard14, keyboard15, keyboard16, keyboard17, keyboard18, keyboard19, keyboard20, keyboard21, keyboard22, keyboard23, keyboard24, keyboard25, keyboard26, keyboard27, keyboard28, keyboard29, keyboard30,keyboard31, keyboard32, keyboard33, keyboard34]
    await message.answer("Номера", reply_markup=keyboards)

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

Автор решения: MyZik

Вместо того, чтобы создать одну клавиатуру и назначить ей кнопки, вы создаёте 34 клавиатур по одной кнопке в каждой - это в корне неправильная логика. Всю Вашу задачу можно уместить в несколько строчек кода:

async def cmd_inline_url(message: types.Message):
    keyboard = types.InlineKeyboardMarkup()

    for i in range(1, 35):
        keyboard.add(types.InlineKeyboardButton(text=f"Номер {i}", callback_data=f"num{i}"))

    await message.answer("Номера", reply_markup=keyboard)
→ Ссылка