Назад к вопросам
Junior
70
questionbank

Как мы можем гарантировать закрытие файла, если не используем конструкцию 'with'?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Используя блок try...finally. В блоке try происходит открытие и работа с файлом. В блоке finally гарантированно вызывается метод close(), даже если возникли исключения в try.

// Открываем файл
file = open('my_file.txt', 'r')
try:
    // Читаем содержимое
    content = file.read()
    print(content)
finally:
    // Гарантированно закрываем файл
    file.close()

Однако, использование with является предпочтительным, так как оно более идиоматично и менее многословно для работы с менеджерами контекста. with также обрабатывает исключения и гарантирует вызов close().