Изучите взаимодействие между различными файлами
Добро пожаловать, ребята, в серию по изучению имен Python как основы Python. В этом блоге учебника вы узнаете о файлах и различных операциях, связанных с ними.
Прежде чем приступить к работе, если вы не читали предыдущий блог о функциях, то сначала прочитайте его.
Файлы
Fille — это набор данных, хранящихся в одном месте или единице. Эти файлы содержат некоторую информацию и хранятся в компьютерной системе. В общем, мы делим файлы на два типа текстовых файлов и двоичных файлов. Текстовые файлы — это те, которые содержат только текстовые данные, а двоичные файлы — это те, которые содержат двоичные данные.
Мы можем выполнять различные типы операций для управления файлами, такие как открытие файла, закрытие файла, переименование файла и многое другое.
Открытие файла
В Python есть встроенная функция open()
для открытия файлов. Есть много способов открыть файл в python.
Mode Description r Opens a file for reading w Opens a file in writing mode x Opens a file for exclusive creation if it is not present a Opens a file in append t Opens a file in text mode b Opens a file in binary mode
💠 Если вы используете w
как режим и если файл уже существует, то он удаляет все содержимое файла и открывается как чистый файл, поэтому лучше использовать a
или a+
, когда важно предыдущее содержимое в файле.
Синтаксис для открытия файла, например, open("FILEPAHT\FILENAME.EXTENSION")
.
f = open("data.txt") ## Opens a file in read mode by default f = open("data.txt",'w') ## Opens a file in write mode
Закрытие файла в питоне
Когда мы закончим работу с нашим файлом, важно правильно закрыть файл.
Как и в Open python, также есть предопределенная функция для закрытия файла close()
Давайте посмотрим на это на примере
f = open("data.txt",'a+') f.close()
Метод, который мы используем до сих пор для открытия файла, небезопасен, потому что может быть из-за какого-то исключения файл может не закрыться, гораздо лучший и безопасный способ сделать это - использовать try
и finally
try: f = open('data.txt',encoding='utf-8') ### Perform some operations finally: f.close()
Таким образом, мы гарантируем правильное закрытие файла, даже если в операциях произошла ошибка. Но, тем не менее, мы должны закрыть файл вручную, что выглядит немного странно, поэтому мы можем использовать более эффективный способ, используя оператор with
.
with open("data.txt",'a+' ,encoding = 'utf-8') as f:
# perform file operations
Запись данных в файлы в python
Чтобы записать данные в файлы, нам нужно открыть файл в режиме w
и с помощью режима write()
мы можем ввести данные в файлы.
with open('data.txt','w') as f: f.write('This the First Line\n") f.write('This the second Line") ------------------------------------------------ -data.txt------ This the First Line This the second Line
Чтение данных из файлов в Python
Чтобы прочитать данные из файла, нам нужно открыть файлы в режиме r
. Ты
f = open('data.txt','r') ##Reads the whole file at a time print(f.read()) ----------------------------------------------- -Console------ This the First Line This the second Line
Есть много других методов, которые можно использовать, один из них — tell()
, который возвращает текущую позицию.
f.tell() ------------------------ returns an interger number
Есть еще один, который также пригодится во многих случаях использования seek()
, который переводит указатель файла в исходное положение.
f.seek(0)
Пример
f = open('data.txt','r') print(f.read()) print(f.tell()) print(f.seek(0)) print(f.tell()) ------------------------------------ This the First Line This the second Line 41 0 0
Чтобы прочитать отдельные строки файла, вы можете использовать readline()
, он читает файл до символа новой строки.
f.readline()
Пример
f = open('data.txt','r') print(f.readline()) print(f.tell()) print(f.seek(0)) print(f.tell()) ------------------------------------- This the First Line 21 0 0