Как остановить цикл и продолжить telebot Python
Отрывок из кода
elif call.data == "sound":
path = "/root/sound"
path1 = (os.listdir(path))
for i in path1:
audio = open(f"{i}", "rb")
bot.send_audio(call.message.chat.id,audio)
По пути /root/sound находятся звуки, их достаточно много, как можно сделать так, чтобы к примеру отправлялось 10 звуков, затем пользователя спрашивали, хотите продолжить ? И ему отправлялись следующие 10 звуков
Ответы (2 шт):
Автор решения: Илья
→ Ссылка
Думаю, есть несколько вариантов решения...один из: ограничьте цикл до n прохождений и отправляя последнее сообщение, добавьте клавиатуру где в data укажите текущий прогресс. Далее... ловите call, вытаскиваете прогресс из data и продолжаете отправку с учетом этого.
Автор решения: user498020
→ Ссылка
Можно попробовать так:
elif call.data == "sound":
path = "/root/sound"
path1 = (os.listdir(path))
sounds = 0
for i in path1:
sounds += 1
audio = open(f"{i}", "rb")
bot.send_message(call.message.chat.id,audio)
if sounds % 10 == 0:
if input('Хотите продолжить?\n') != 'да':
break