Back to questions
Middle+
2
Что такое контекстный менеджер и зачем он нужен?
Companies where asked
ГБУ МО УТНКР
Answer from AI
sobes.tech AI
Контекстный менеджер в Python — это объект, который определяет методы __enter__ и __exit__, позволяющие автоматически управлять ресурсами, например, открытием и закрытием файлов, блокировками или сетевыми соединениями.
Он нужен для того, чтобы гарантировать корректное освобождение ресурсов, даже если в блоке кода возникнут исключения. Используется с конструкцией with.
Пример:
with open('file.txt', 'r') as f:
data = f.read()
# файл автоматически закрывается после выхода из блока
Здесь open возвращает контекстный менеджер, который открывает файл при входе и закрывает при выходе из блока.