IliaNeverov, у тебя вопрос относительно выражения return или относительно места получения результата?
Иными словами. Ты спрашиваешь, закончится ли выполнение кода функции сразу после строчки return или закончится ли выполнение кода функции сразу после получения возвращенного ей значения?
IliaNeverov, в таком случае оба ответа верны.
Если был использован return, то к моменту получения результата функции весь ее код завершен. Если бы использован co_yield, то к моменту получения результата код функции приостановлен.
Дело в том, что после выполнения строки с кодом return функция еще продолжает работать, вызывая деструкторы локальных объектов и выполняя некоторый сервисный код. Только после этого результат из строки с кодом return будет передан в вызвавший функцию код.