Создавая программы на Python Вам скорее всего не обойтись без файловых операций, так как результат выполнения программ надо где-то хранить. В Python работа с файлами организована удобно и ясно и в данной статье мы поговорим об этом.

Работа с файлами в Python

Создавая программы на Python Вам скорее всего не обойтись без файловых операций, так как результат выполнения программ надо где-то хранить. В Python работа с файлами организована удобно и ясно и в данной статье мы поговорим об этом.

Большинство файловых манипуляций в Python выполняется с использованием объекта file.

Функция open

До того как прочитать из файла или записать что-либо в файл необходимо этот файл открыть. Файлы в Python открываются с помощью встроенной функции open(). Эта функция создает объект файла (file object), который будет использоваться для вызова других методов.

Как открыть файл в Python?

fileObject = open( имя_файла, [, режим доступа ] [, буферизация ] )

Описание параметров:

  • имя_файла - название открываемого файла
  • режим доступа - файл открывается для чтения, записи или добавления
  • буферизация - необязательный параметр чтение буферизации для повышения скорости чтения фаловых операций

Режимы чтения могут быть разными - вот некоторые из них:

  • r - открывает файл только для чтения. Внутренний указатель файла помещается в начале файла. Этот режим устаканивается по умолчанию.
  • rb - открывает файл для чтения, в бинарном формате. Т.е. с помощью данного режима можно открывать не текстовые файлы.
  • r+ - открывает файл для чтения и записи одновременно. Указатель устанавливается в начале файла. Для текстовых файлов.
  • rb++ - тоже самое, что и r+, но только для бинарных файлов.
  • w - открывает файл только в режиме записи. Перезаписывает содержимое файла (!), если такой файл уже существует. Если файл нес существует, то создается новый файл для записи.
  • w+ - открывает файл для записи и чтения. Перезаписывает существующий файл, если файл с данным названием уже существует.
  • wb+ - открывает файл для чтения и записи в бинарном формате. Перезаписывает существующий файл, если таковой уже существует. Если файл не существует, создается новый файл и открывается для записи и чтения.
  • a - открывает файл в режиме добавления текста в конец файла. Указатель файла устанавливается в конец файла

После того как файл открыт, мы можем получить информацию о файле:

Вот некоторый список атрибутов

  • file.closed - файл закрыт или открыт
  • file.mode - возвращает режим доступа в котором открыт файл
  • file.name - возвращается имя открытого файла

Пример:

# Открываем файл
file = open('отчет_2019.docx', 'rb')

print 'Название файла: ', file.name 
print 'Закрыт / открыт: ', file.closed
print 'Режим открытия: ', file.mode

# закрывраем файл 
file.close()

Таким образом, у Python очень простой и логичный синтаксис открытия файлов различных форматов.