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

Возможно ли использовать несколько yield в генераторе на Python

Да, в генераторе можно использовать несколько yield. Каждый yield приостанавливает выполнение функции и возвращает значение. При следующем вызове генератора выполнение продолжается с места последнего yield.

Пример:

python
def multi_yield():
    yield "First"
    yield "Second"
    yield "Third"

gen = multi_yield()
print(next(gen))  # 'First'
print(next(gen))  # 'Second'
print(next(gen))  # 'Third'

Особенности:

  1. Генератор сохраняет состояние между вызовами
  2. После последнего yield вызывается StopIteration
  3. Можно комбинировать yield с другими конструкциями (циклами, условиями)

Такой подход часто используется для поэтапной генерации данных или реализации конечных автоматов.

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

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

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

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