У меня появляется ошибка SyntaxError: 'return' outside function.Что делать с кодом?

import requests
import vk_api
from vk_api.longpoll import VkLongPoll, VkEventType

vk = vk_api.VkApi(token='')

def write_msg(peer_id, message):
   vk.method("messages.send", {"peer_id": peer_id, "message": message, "random_id": 417132})

#def write_msgg(chat_id, message):
   #vk.method("messages.send", {"chat_id": 33, "message": message, "random_id": 717542})

# Работа с сообщениями
longpoll = VkLongPoll(vk)

for event in longpoll.listen():
    if event.type == VkEventType.MESSAGE_NEW and event.to_me and event.text:
    # Слушаем longpoll, если пришло сообщение то:
        print('new message')
        print('-----------')

        if event.text == 'hb' or event.text == 'hi bot': #Если написали заданную фразу

            if event.from_user: #Если написали в ЛС
                write_msg(event.peer_id, 'Привет')
                return(write_msg)

Ответы (1 шт):

Автор решения: Zhihar

оберните свой код в функцию и тогда смело можете делать return, а до этого только break чтобы выйти из цикла

def newFunc():
    # Работа с сообщениями
    longpoll = VkLongPoll(vk)
    
    for event in longpoll.listen():
        if event.type == VkEventType.MESSAGE_NEW and event.to_me and event.text:
        # Слушаем longpoll, если пришло сообщение то:
            print('new message')
            print('-----------')
    
            if event.text == 'hb' or event.text == 'hi bot': #Если написали заданную фразу
    
                if event.from_user: #Если написали в ЛС
                    write_msg(event.peer_id, 'Привет')
                    return(write_msg)
                
    return ""
→ Ссылка