Встречается на собеседованиях • сегодня

Как работает асинхронный генератор в Python

Асинхронный генератор — это функция, объявленная с async def, которая содержит yield. Вместо обычного генератора, он возвращает асинхронный итератор, который можно использовать с async for.

python
async def async_gen():
    for i in range(3):
        await asyncio.sleep(1)  # Асинхронная операция
        yield i

async def main():
async for item in async_gen():
print(item)

asyncio.run(main())

text

**Особенности:**  
1. Вызывается с `async for` или `anext()`.  
2. Нельзя использовать `yield` и `yield from` в одном генераторе.  
3. Для обработки ошибок используется `try/except` внутри `async for`.  

**Пример с `anext()`:**  
```python
gen = async_gen()
print(await anext(gen))  # Получаем первое значение
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы