Вызов close() до первого next(): выполнится ли finally в генераторе Python
Выберите ответ и проверьте себя на странице.
Другие упражнения по этой теме: Генераторы Python: задачи на ленивые конвейеры и закрытие ресурсов.
Рассмотрите следующий код:
cleaned = False
def worker():
global cleaned
try:
yield 100
finally:
cleaned = True
g = worker()
g.close()
Каково будет значение переменной cleaned после выполнения строки g.close() и почему?
Без регистрации · результат не сохраняется
Связанные задачи
- GeneratorExit и yield при close(): вопрос по генераторам Python
- Генераторы Python: синхронизация потоков после фильтрации
- Генераторы Python: разделите поток между двумя потребителями
- Исправьте остановку генераторного конвейера Python
- Генератор скользящего среднего на Python со сбросом окна
- Генераторы Python: закройте второй источник при ошибке первого
