Пишу телеграмм бота, в котором необходима создавать кнопки из списка. Т.е. я имею некоторый список, который ранее взял из excel документа, и мне нужно создать инлайн-кнопки по этому списку. Это нужно сделать циклом, чтобы список было возможно менять в зависимости от документа excel (там к слову лежат несколько листов - названия направлений, в каждом из которых расписание учебных занятий по группам).
Я попробовал сделать что то и получаю ошибку
@bot.callback_query_handler(func=lambda call: True)
def callback_inline(call):
try:
if call.message:
if call.data == 'vr':
wb = openpyxl.reader.excel.load_workbook(filename="timetable.xlsx")
wb.active = 0
sheet = wb.active
#Список групп, запись в него циклом
groups = [ ]
for i in range(1, 25):
some = sheet.cell(row=i, column=2).value
if some != None:
if "ВР" in some:
groups.append(some)
#Клавиатура циклом
def generate(message):
markup = types.InlineKeyboardMarkup(row_width=2)
for i in range(len(groups)):
name = str(groups[i])
markup.add(types.InlineKeyboardButton(str(name), callback_data=name))
bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text="Ok",
reply_markup=markup)
else:
print(2)
Ошибка при прохождении куска кода вот такая: Нажимая на кнопку VR (
https://i.imgur.com/jiF3rHq.png) в её уголочке появлется значок часов (типа что-то работает), но после он пропадает, а кнопки не меняются. В консоли приложения сообщений и ошибок нет.