TelegrammBot вывод кнопок из прочитанной папки
затея такова: бот должен читать количество файлов в папке и на каждый файл выводить инлайн кнопку и выводить это общим пулом, у меня получается вывод каждой кнопки отдельным сообщением.
кто сталкивался подскажите
for file_name in os.listdir('folder'):
await message.message.answer(text='ˆˆˆ', reply_markup=InlineKeyboardMarkup().
add(InlineKeyboardButton(f"{file_name.split('.')[1]}",
callback_data=f'{file_name}')))
Ответы (1 шт):
Автор решения: oleksandrigo
→ Ссылка
Штош. Смотрите что вы делаете, запускаете цикл по файлам в папке и на каждую итерацию отправляете сообщение. Так что код делает то что он и должен делать.
Как фиксить?
Просто вынесите отправку сообщения из цикла.
markup = InlineKeyboardMarkup()
for file_name in os.listdir('folder'):
markup.add(InlineKeyboardButton(f"{file_name.split('.')[1]}", callback_data=f'{file_name}'))
await message.answer(text='ˆˆˆ', reply_markup=markup)