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

Что такое yield from

yield from — это синтаксическая конструкция в Python, которая упрощает делегирование генерации значений другому генератору или итерируемому объекту. Она позволяет избежать ручного перебора элементов вложенного генератора.

Пример:

python
def generator1():
    yield from range(3)
    yield from [10, 20, 30]

for value in generator1():
print(value) # 0, 1, 2, 10, 20, 30

text

Ключевые особенности:
1. Полностью заменяет вложенные циклы `for` + `yield`
2. Передает управление подгенератору напрямую
3. Позволяет делегировать даже корутины (в async/await)
4. Сохраняет контекст выполнения, включая исключения

Аналог без `yield from`:
```python
def generator2():
    for i in range(3):
        yield i
    for j in [10, 20, 30]:
        yield j

Особенно полезен при работе с цепочками генераторов или асинхронными корутинами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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