Встречается на собеседованиях • сегодня
Как используется генератор в библиотеке asyncio
Генераторы в asyncio используются для создания корутин (coroutines) — специальных функций, которые могут приостанавливать своё выполнение и возобновлять его позже. Корутины позволяют писать асинхронный код в синхронном стиле.
Ключевые моменты:
- Корутина создаётся с помощью
async def(Python 3.5+) - Внутри корутины используется
awaitдля ожидания других корутин или Future - Генераторный стиль (
yield from) использовался в Python 3.4, но сейчас устарел
Пример:
python
import asyncio
async def fetch_data():
print("Начало загрузки")
await asyncio.sleep(2) # Имитация долгой операции
print("Данные загружены")
return {"data": 123}
async def main():
task = asyncio.create_task(fetch_data())
print("Делаем что-то параллельно")
await task
print("Результат:", task.result())
asyncio.run(main())Важно: современный asyncio использует async/await вместо генераторов, но под капотом сохраняется схожий механизм приостановки/возобновления выполнения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы