Что такое генераторы и контекстные менеджеры в Python? Как вы с ними работали?

Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.

Короткий ответ

Что ответить на собеседовании

Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.

Подробный разбор

Ответ с пояснениями

Генератор выдаёт значения по мере обхода через yield, не создавая всю последовательность сразу. Контекстный менеджер задаёт вход и выход из блока with, в том числе очистку при исключении.

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

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку