47. Оператор with/as для работы с файлами в Python
В предыдущем уроке вы научились работать с файлами. Разобрались как открывать их для записи и чтения в требуемом режиме и обучились правильному их закрытию. В этом уроке рассмотрим более прогрессивный и надежный способ работы с файлами, при помощи конструкции with/as
, которая работает как менеджер контекста.
Менеджеры контекста необходимы для выделения ресурсов и их освобождение за ненадобностью. Использование конструкции with/as
при работе с файлами в Python гарантирует закрытие файла.
Давайте откроем файл из предыдущего урока и распечатаем его содержимое в консоль:
with open("file.txt", "r", encoding='utf-8') as f:
print(f.read())
Как видите, объект класса _io.TextIOWrapper
(про который говорили в предыдущем уроке) возвращается в переменную f
. Далее работаем с файлом точно так же.
На этом раздел по работе с файлами в Python закончен. В уроке 11.1. мы очень подробно разобрались с методами read()
и write()
, режимами работы с файлом и его кодировкой. В этом уроке углубили знания и познакомились с конструкцией with/as
. Теперь вы готовы пройти тест по работе с файлами в Python.