Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.
Что такое генераторы и контекстные менеджеры в Python? Как вы с ними работали?
Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.
Генераторы полезны для потокового чтения и преобразования больших наборов. Контекстные менеджеры — для файлов, блокировок и ресурсов с обязательным освобождением. Обычный генератор одноразовый: после исчерпания его нужно создать заново. Свой опыт иллюстрируйте конкретной задачей, а не утверждением, что любой генератор автоматически быстрее списка.