Встречается на собеседованиях • сегодня
Что такое менеджеры контекста в Python
Менеджеры контекста в Python — это объекты, которые определяют контекст выполнения блока кода с помощью методов __enter__ и __exit__. Они гарантируют, что ресурсы будут правильно выделены и освобождены, даже если возникнет исключение.
Самый распространённый пример — работа с файлами через with:
python
with open('file.txt', 'r') as f:
data = f.read()
# файл автоматически закрывается здесьЭквивалентно:
python
f = open('file.txt', 'r')
try:
data = f.read()
finally:
f.close()Можно создавать свои менеджеры контекста через классы или contextlib:
python
from contextlib import contextmanager
@contextmanager
def timer():
start = time.time()
yield
print(f"Time: {time.time() - start}")
with timer():
# код для замера времениКлючевые преимущества: безопасность ресурсов, чистота кода и обработка исключений в __exit__.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы