Въведение в файловите операции на Python
Python е прост, мощен и един от широко използваните езици за програмиране за уеб разработка. Като един от мощните езици, той предоставя възможност на файловете да обработват файловете си. Той позволява създаване, четене, писане, актуализиране и изтриване на файл. За разлика от другите езици за програмиране, Python предоставя много лесен начин за управление на файловете. Python третира бинарните и текстовите файлове по различен начин. Преди да извършим каквито и да било операции във файл, първо трябва да го отворим и след това да затворим, след като операциите са извършени, за да освободим свързаните с него ресурси. В тази тема ще научим за Python File Operations.
Отваряне на Python файл
Първата операция, която работи върху файла, е да го отворите. В Python функцията open () (вградена функция) се използва за отваряне на файл в режим на четене и запис. Тази функция връща файлов обект. В функцията open () дефинираме два аргумента, в които първият е името на файла, а вторият е режимът, в който искаме да отворим този файл.
Синтаксис: file = open (“abc.txt”, “r”)
В горния пример, потребителят иска да отвори файл с име „abc.txt“ в режим на четене. По същия начин, потребителите могат да отворят файл в различни режими като „w” за режим на запис и „a” за режим на добавяне. В Python потребителят може също така да посочи двоичен или текстов режим, в който иска да отвори файл. Не е задължително потребителят да определя режима на файла, ако не е посочен режим, тогава по подразбиране Python ще отвори файл в режим на четене „r“.
Синтаксис: file = open (“abc.txt”)
Горните два начина за отваряне на файл ще извършат едно и също действие, т.е. ще отворят Python файл в режим на четене. Нека разберем различни файлови режими в Python:
вид | Функция Описание |
"R" | Отваря файл в режим на четене |
"W" | Отваря файл в режим на запис |
"А" | Отваря файл в режим на добавяне (добавяне на текст в края на файла) |
"х" | Създава определен файл, връща грешка, ако файлът вече съществува |
"R +" | Отваря файл в режим на четене и писане |
"Б" | Отваря файл в двоичен режим (в случай на изображения, .exe файлове) |
"T" | Отваря файл в текстов режим |
Примери
- Режим на четене
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 () в най-накрая блок, така че той да се изпълнява всеки път, дори в случай на изключения.
Пример с помощта на опита и накрая
try : file = open
(“abc.txt”, 'w') finally:
file.close()
Четене на файл
За да прочетем файл в Python, първо трябва да го отворим в режим на четене. Има няколко метода за четене на файл, предоставен от Python. Нека ги разберем едно по едно:
- метод четене (): Този метод чете целия файл наведнъж. Този метод връща \ n за новия ред. След като целият файл е завършен, получаваме цял празен низ, така че трябва отново да зададем курсора, използвайки методите търсене () и 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
- метод за четене (): Този метод се използва за четене на файл един ред по един, докато \ 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
- метод за четене (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()
Метод на писане (): Методът на писане () също се използва за писане на последователност от низове във файл.
Пример:
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, ако файлът може да бъде прочетен |
търси (компенсира, от) | Използва се за задаване на текущата позиция на файла обект за компенсиране на байтове от дадените байтове |
казвам() | Връща текущата позиция на файла |
seekable () | Връща true, ако файлът поток позволява произволен достъп |
писане () | Връща true, ако файлът позволява да бъде записан |
fileno () | Връща номера на файла (дескриптор на файла), използван от операционната система за I / O операции |
следващия() | Връща следващия ред на файла |
отрязък ((размер)) | Орязва файла до посочения размер (незадължително). |
Извод - Python File Operations
Работата върху файлове е една от важните концепции в уеб разработката. Различните методи във файла имат специфични цели. Преди да използвате какъвто и да е метод, човек трябва да знае точно какво всъщност трябва да изпълнява и трябва да познава в дълбочина всички файлови методи. Както за четене на файл, има няколко различни метода, налични в Python, използвани в различни сценарии. Така че само с дълбокото познание може да изберете правилния метод в правилния сценарий.
Препоръчителни статии
Това е ръководство за Python File Operations. Тук обсъждаме как да извършите всяка операция във файла python и след това да затворите, след като операциите са извършени. Можете също да разгледате следната статия, за да научите повече -
- Модели в Python
- Конструктор в Python
- Python Sets
- Булови оператори в Python
- Python Collection