Введение в операции с файлами Python
Python - это простой, мощный и один из широко используемых языков программирования для веб-разработки. Будучи одним из мощных языков, он предоставляет возможность обработки файлов для своих пользователей. Это позволяет создавать, читать, писать, обновлять и удалять файлы. В отличие от других языков программирования, Python предоставляет очень простой способ управления файлами. Python обрабатывает двоичные и текстовые файлы по-разному. Прежде чем выполнять какие-либо операции с файлом, нам нужно сначала открыть его, а затем закрыть после выполнения операций, чтобы освободить связанные с ним ресурсы. В этой теме мы собираемся узнать об операциях с файлами Python.
Открытие файла Python
Самая первая операция для работы с файлом - это открыть его. В Python функция open () (встроенная функция) используется для открытия файла в режиме чтения и записи. Эта функция возвращает объект файла. В функции open () мы определяем два аргумента, в которых первый - это имя файла, а второй - режим, в котором мы хотим открыть этот файл.
Синтаксис: file = open (“abc.txt”, “r”)
В приведенном выше примере пользователь хочет открыть файл с именем «abc.txt» в режиме чтения. Аналогично, пользователи могут открывать файл в разных режимах, таких как «w» для режима записи и «a» для режима добавления. В Python пользователь также может указать двоичный или текстовый режим, в котором он хочет открыть файл. Пользователь не обязан указывать режим файла, если режим не указан, то по умолчанию Python откроет файл в режиме чтения «r».
Синтаксис: file = open (“abc.txt”)
Два вышеупомянутых способа открытия файла будут выполнять одно и то же действие, то есть открывать файл Python в режиме чтения. Давайте разберемся с различными режимами файлов в Python:
Режим | Описание функции |
"р" | Открывает файл в режиме чтения |
«Ж» | Открывает файл в режиме записи |
«А» | Открывает файл в режиме добавления (добавление текста в конец файла) |
"Икс" | Создает указанный файл, возвращает ошибку, если файл уже существует |
«Г +» | Открывает файл в режиме чтения и записи |
«Б» | Открывает файл в двоичном режиме (в случае изображений, файлы .exe) |
«Т» | Открывает файл в текстовом режиме |
Примеры
- Режим чтения
file = open (“abc.txt”, 'r') for (x in file):
print x // prints the whole content of each line stored in x one by one
- Режим записи
file = open(“new.txt”, 'w')
file.write (“hello I am learning file operations in Python”) // write the content in file file.close()
- Режим добавления
file = open (“test.txt”, 'a')
file.write (“hello this will append content in the file”) // append content at the end of file.close()
Закрытие файла
Рекомендуется закрыть файл после того, как над ним будут выполнены необходимые операции, поскольку это освободит все ресурсы, которые используются в этом файле и могут быть выделены где-то еще операционной системой. Для закрытия файла в Python используется метод close ().
Хотя закрывать файл не обязательно, так как Python использует сборщик мусора для очистки объектов, на которые нет ссылок, но это хорошая практика, и мы должны это сделать.
Синтаксис: file.close ()
Пример:
file = open (“abc.txt”, ”a”) file.write (“append the text”) file.close()
Он не принимает никаких параметров, таких как открытие файла, но этот метод не является полностью безопасным, так как в случае исключений он может выйти из кода без закрытия файла. Для этого лучше использовать метод close () в блоке finally, чтобы он запускался каждый раз, даже в случае исключений.
Пример использования try и finally
try : file = open
(“abc.txt”, 'w') finally:
file.close()
Чтение файла
Чтобы прочитать файл в Python, нам нужно сначала открыть его в режиме чтения. Существует несколько способов чтения файла, предоставляемых Python. Давайте разберемся их один за другим:
- Метод read (): этот метод читает весь файл за раз. Этот метод возвращает \ n для новой строки. Как только весь файл будет завершен, мы получим целую пустую строку, поэтому нам нужно снова установить курсор, используя методы seek () и tell ().
пример
Файл:
This is line 1
This is line 2
file = open (“abc.txt”, 'r') print file.read() // This is line 1
// This is line 2
- Метод readline (): Этот метод используется для чтения файла по одной строке за раз, пока в файле не будет найден символ \ n. Он добавляет \ n в конце строки.
пример
file = open (“abc.txt”, 'r') print file.readline() // This is line 1
- Метод readlines (): этот метод используется для чтения всего файла, но построчно. Он обновляет файл по каждой строке, которая возвращается.
пример
file = open (“abc.txt”, 'r') print file.readlines() //This is line 1
// This is line 2
- Метод read (n): этот метод используется, если мы хотим прочитать указанную длину символов в файле.
пример
File = open (“abc.txt”, 'r') print read(5) // 'This ' (including 1 space after s) (read 5 characters of a file)
Написание файла
Чтобы записать файл в Python, нам нужно сначала открыть файл в режиме записи «w», добавить «a» или режим создания исключения «x».
Существует небольшая разница между режимом добавления и записи в Python, и нужно быть очень осторожным с этим, так как метод добавления добавляет содержимое в конец файла, то есть это не повлияет на данные, если файл уже создан и имеет некоторые данные в нем. Но метод записи перезапишет содержимое файла, если файл с некоторыми данными уже присутствует. Этот метод ничего не возвращает.
пример
file = open (“abc.txt”, 'r+') file.write
(“this is line 1\n”) file.write (“this is
line 2\n”) file.close()
Метод writelines (): метод writelines () также используется для записи последовательности строк в файл.
Пример:
file = open (“abc.txt”, 'w')
lines = (“this is line 1”, “this is line 2”) file.writelines(lines)
file.close()
Удаление файла
Для удаления файла в Python используется метод remove (). Для этого нужно импортировать модуль os в программу.
Syntax: os.remove(“filename”)
пример
import os; os.remove
(“abc.txt”)
Другие операции с файлами
Существуют различные другие методы, которые используются с файловыми объектами для различных операций:
метод | Описание функции |
румянец() | Очистите внутренний буфер. Не имеет возвращаемого значения |
открепление () | Возвращает разделенный сырой поток из буфера |
удобочитаемый() | Возвращает true, если поток файла может быть прочитан |
искать (смещение, от) | Используется для установки текущей позиции объекта файла для смещения байтов от заданных байтов |
сказать() | Возвращает текущую позицию файла |
доступные для поиска () | Возвращает true, если файловый поток разрешает произвольный доступ |
перезаписываемый () | Возвращает true, если файл позволяет записать в |
fileno () | Возвращает номер файла (дескриптор файла), используемый операционной системой для операций ввода-вывода |
следующий() | Возвращает следующую строку файла |
усечение ((размер)) | Усекает файл до указанного размера (необязательно). |
Заключение - операции с файлами Python
Работа с файлами является одним из важных понятий в веб-разработке. Различные методы в файле служат определенным целям. Прежде чем использовать какой-либо метод, необходимо точно знать, что на самом деле ему нужно выполнить, и хорошо знать все файловые методы. Как и для чтения файла, в Python доступно несколько различных методов, используемых в разных сценариях. Так что только с глубокими знаниями только можно выбрать правильный метод в правильном сценарии.
Рекомендуемые статьи
Это руководство по работе с файлами Python. Здесь мы обсудим, как выполнить любую операцию в файле Python, а затем закрыть после того, как операции будут выполнены. Вы также можете посмотреть следующую статью, чтобы узнать больше -
- Шаблоны в Python
- Конструктор в Python
- Наборы Python
- Булевы операторы в Python
- Коллекции Python