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

Какие знаешь ключевые слова в контекстном менеджере

В Python контекстные менеджеры реализуются с помощью ключевых слов with и as. Основные элементы:

  1. with - открывает контекстный менеджер
  2. as - присваивает результат метода __enter__() переменной

Пример:

python
with open('file.txt', 'r') as f:
    content = f.read()

Для создания своего контекстного менеджера используются методы:

  • __enter__() - выполняется при входе в контекст
  • __exit__() - выполняется при выходе (даже при исключении)

Также можно использовать contextlib.contextmanager для создания менеджера через генератор:

python
from contextlib import contextmanager

@contextmanager
def timer():
    start = time.time()
    yield
    print(f"Time: {time.time() - start}")

with timer():
    # какой-то код
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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