@dp.callback_query_handler()
async def call_data_process(call: types.CallbackQuery):
global COUNT
with open("test_words.txt", "r", encoding="utf-8") as file:
lines = file.readlines()
pages = len(lines) // 10 + 1 # определяем количество страниц
if call.data == "next":
COUNT += 1
elif call.data == "prev":
COUNT -= 1
COUNT = max(0, min(COUNT, pages - 1)) # ограничиваем значение счетчика до границ страниц
start = COUNT * 10 # определяем начало и конец страницы
end = start + 10
text = "".join(lines[start:end]) # выбираем нужный диапазон строк
keyboard = InlineKeyboardMarkup(row_width=2)
if COUNT > 0:
keyboard.add(InlineKeyboardButton("Назад", callback_data="prev"))
if COUNT < pages - 1:
keyboard.add(InlineKeyboardButton("Вперед", callback_data="next"))
await call.message.edit_text(text=text, reply_markup=keyboard)