Не переходит к следущему элементу списка
имеется часть кода, которая отвечает за рассылку сообщений пользователям, но по какой-то причине цикл не переходит к следущему шагу, вот код:
should_send = []
vk_session = vk_api.VkApi(token=token)
vk = vk_session.get_api()
longpoll = VkLongPoll(vk_session)
def message_about_today():
for i in vk.groups.getMembers(group_id="тут всё хорошо")['items']:
name = ((vk.users.get(user_ids=i))[0])["first_name"]
vk.messages.send(message='Да/Нет', user_id=i, random_id=0)
for event in longpoll.listen():
if event.type == VkEventType.MESSAGE_NEW:
if event.to_me:
if event.text.lower() == "да":
global should_send
should_send.append(name)
vk.messages.send(message="Вы добавлены в список избранных, {}".format(name), user_id=i, random_id=0)
else:
vk.messages.send(message="Ну не хотите, как хотите", user_id=i, random_id=0)
Ответы (1 шт):
Автор решения: Nyuhnyash
→ Ссылка
В строке for event in longpoll.listen(): бесконечный цикл, после попадания в него итерации цикла на уровень выше вы больше не дождётесь.
Одним из вариантов решения, без изменения текущей структуры метода, будет добавления break в тело if event.to_me: