Встречается на собеседованиях • сегодня
Как вызвать корутину
Вызов корутины в Python требует её явного запуска через механизм событийного цикла (event loop). Корутина сама по себе — это объект функции, но не её выполнение.
Основные способы:
awaitвнутри другой корутины:
python
async def coro():
print("Hello")
async def main():
await coro() # Вызов корутины- Запуск через
asyncio.run()(Python 3.7+):
python
import asyncio
async def coro():
print("Hello")
asyncio.run(coro()) # Запуск корутины- Вручную через event loop (устаревший способ для старых версий):
python
loop = asyncio.get_event_loop()
loop.run_until_complete(coro())Важно:
awaitнельзя использовать вне корутины.asyncio.run()создаёт и закрывает event loop автоматически.- Корутины возвращают результат через
return, который можно получить черезawait.
Пример с возвратом значения:
python
async def calc():
return 42
async def main():
result = await calc()
print(result) # 42
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы