Выбрать главу
Список режимов доступа к файлу в Python.

r

Открывает файл только для чтения. Указатель стоит в начале файла.

rb

Открывает файл для чтения в двоичном формате. Указатель стоит в начале файла.

r+

Открывает файл для чтения и записи. Указатель стоит в начале файла.

rb+

Открывает файл для чтения и записи в двоичном формате. Указатель стоит в начале файла.

w

Открывает файл только для записи. Указатель стоит в начале файла. Создает файл с именем имя_файла, если такового не существует.

wb

Открывает файл для записи в двоичном формате. Указатель стоит в начале файла. Создает файл с именем имя_файла, если такового не существует.

w+

Открывает файл для чтения и записи. Указатель стоит в начале файла. Создает файл с именем имя_файла, если такового не существует.

wb+

Открывает файл для чтения и записи в двоичном формате. Указатель стоит в начале файла. Создает файл с именем имя_файла, если такового не существует.

a

Открывает файл для добавления информации в файл. Указатель стоит в конце файла. Создает файл с именем имя_файла, если такового не существует.

ab

Открывает файл для добавления в двоичном формате. Указатель стоит в конце файла. Создает файл с именем имя_файла, если такового не существует.

a+

Открывает файл для добавления и чтения. Указатель стоит в конце файла. Создает файл с именем имя_файла, если такового не существует.

ab+

Открывает файл для добавления и чтения в двоичном формате. Указатель стоит в конце файла. Создает файл с именем имя_файла, если такового не существует.

Атрибуты файлового объекта в Python.

Как только файл был открыт и у вас появился файловый объект, вы можете получить следующую информацию о нем:

file.closed

Возвращает True если файл был закрыт.

file.mode

Возвращает режим доступа, с которым был открыт файл.

file.name

Возвращает имя файла.

file.softspace

Возвращает False если при выводе содержимого файла следует отдельно добавлять пробел.

Например:

| my_file = open("some.txt", "w")

| print ("Имя файла: ", my_file.name)

| print ("Файл закрыт: ", my_file.closed)

| print ("В каком режиме файл открыт: ", my_file.mode)

| print ("Пробелы: ", my_file.softspace)

Закрытие файла в Python. Метод close().

Метод файлового объекта close() автоматически закрывает файл, при этом теряется любая несохраненная информация. Работать с файлом (читать, записывать) после этого нельзя.

Python автоматически закрывает файл если файловый объект к которому он привязан присваивается другому файлу. Однако, хорошей практикой будет вручную закрывать файл командой close().

| my_file = open("some.txt")

| print ("Имя файла: ", my_file.name)

| print ("Файл закрыт: ", my_file.closed)

| my_file.close()

| print ("А теперь закрыт: ", my_file.closed)

Чтение и запись файлов в Python

Для файлового объекта доступен целый набор методов, чтобы облегчить нашу работу с файлом.

Запись в файл в Python. Метод write().

Метод write() записывает любую строку в открытый файл. Важно помнить, что строки в Python могут содержать двоичные данные, а не только текст.

Метод write() не добавляет символ переноса строки ('\n') в конец файла.

Синтаксис метода write().

| my_file.write(string);

Например:

| my_file = open("some.txt", "w")

| my_file.write("Мне нравится Python!\nЭто классный язык!")

| my_file.close()

Вышеприведенный код создаст файл some.txt и запишет в него указанную строку.

Чтение из файла в Python. Метод read().

Метод read() читает строку из открытого файла.

Синтаксис метода read().

| my_file.read([count])

Необязательный параметр count - это количество байт, которые следует прочитать из открытого файла. Этот метод читает информацию с начала файла и, если параметр count не указан, до конца файла.

Например, прочтем созданный нами файл some.txt: