Python

Как да четем и пишем текстови файлове в Python

Как да четем и пишем текстови файлове в Python
Тази статия ще обхване ръководство, обясняващо обработката на външни файлове в python. Основният фокус ще бъде върху отварянето и затварянето на текстови и други небинарни файлове с данни, съхранявани на носител за съхранение, което ви позволява да изпълнявате различни операции върху съдържанието на отворените файлове.

Отваряне и затваряне на файл

За да четете данни от текстов файл с име „данни.txt “, трябва да използвате метода„ отворен “, който се предлага с официалните компилации на Python. Проверете примерния код по-долу:

f = отворен ('данни.txt ',' r ')
е.близо()

Първото изявление отваря „данните.txt ”файл в режим„ r ”(само за четене). Методът „отворен“ приема името на файла и режима за обработка на файла като аргументи. Освен режим „r“, има и други режими, които ще бъдат обяснени по-късно. Кодовият фрагмент по-горе не изпълнява никакви операции с отворения файл. Методът „затваряне“ се използва за чисто затваряне на отворения файл, за да се освободи паметта и за да се избегне повреда на данните в отворения файл, която може да се случи понякога, ако файлът не е затворен правилно.

Вместо да използвате метода „отворен“ за обработка на отваряне и затваряне на файлове, можете да го комбинирате с ключова дума „с“ и да използвате израза „с отворен“.

с отворен ('данни.txt ',' r ') като f:
мине

Основното предимство на използването на оператор „с отворен“ е, че интерпретаторът автоматично затваря отворения файл безопасно, когато блокът „с отворен“ код е анализиран напълно. Въпреки че събирачът на боклук в Python автоматично затваря отворени файлове след известно време според предварително зададените правила, „с отворени“ инструкции гарантират, че файлът е чисто затворен веднага щом кодовият блок приключи, за да освободи ресурси.

Четене на редове от текстов файл

За да прочетете съдържанието на файл, използвайте примерния код по-долу:

с отворен ('данни.txt ',' r ') като f:
данни = е.Прочети()
печат (данни)

Например, ако „данни.txt ”файлът има 1-10 номера, всеки на нов ред, ще получите следния изход след стартиране на горния код:

1
2
3
4
5
6
7
8
9
10

Цялото изхвърляне на данни на „data.txt ”файлът се съхранява в променливата„ data ”. Ако искате да прочетете редове в списък, можете да използвате следните примерни кодове:

с отворен ('данни.txt ',' r ') като f:
данни = е.прочетени линии ()
print (data) с open ('data.txt ',' r ') като f:
данни = списък (f)
печат (данни)

Имайте предвид, че използването на горни фрагменти може да ви даде символа „\ n“ (нов ред) в края на всеки елемент в списъка. За да премахнете тези символи от нов ред, може да се наложи да прегледате списъка. Можете както да създадете нов списък, така и да премахнете символи от нов ред, като използвате следния код:

data_list = []
с отворен ('данни.txt ',' r ') като f:
за ред в f:
списък с данни.добавяне (ред.Лента())
печат (списък с данни)

Изпълнението на горния код ще ви даде следния изход:

[„1“, „2“, „3“, „4“, „5“, „6“, „7“, „8“, „9“, „10“]

Записване на данни в отворен файл

За да запишете данни във файл, който се отваря с помощта на оператора „с отворен“, ще трябва да предоставите различен режим на отваряне като аргумент. Ето някои от режимите:

Някои кодови фрагменти, използващи различни режими за запис на данни, са изброени по-долу.

За да напишете ново съдържание в текстов файл, докато изтривате съществуващи данни, използвайте следната извадка:

с отворен ('данни.txt ',' w ') като f:
е.запис ("1 \ n2")

След като стартирате горния фрагмент, 1-10 числа в „данни.txt ”файлът трябва да бъде заменен с два нови реда.

За да добавите редове в началото на текстов файл, трябва да използвате метода „търси“, за да се върнете в началната позиция на файловия буфер:

с отворен ('данни.txt ',' r + ') като f:
данни = е.Прочети()
е.търся (0)
е.запис ("- 1 \ n0 \ n")
е.запис (данни)

След стартиране на горния фрагмент, числата -1 и 0 ще бъдат добавени към горните два реда в „данни.txt ”файлове.

За да добавите данни в края на файла, използвайте следната извадка:

с отворен ('данни.txt ',' a ') като f:
е.запис ("11 \ n12")

След стартиране на горния фрагмент, 11 и 12 числа ще бъдат добавени в края на файла.

Заключение

Вградените класове и методи в Python осигуряват надежден начин за обработка на текстови файлове. Само с няколко реда код можете да манипулирате съществуващите данни във файл, както и да вмъквате нови редове.

Как да заснемете и поточно предадете игралната си сесия на Linux
В миналото играта на игри се смяташе само за хоби, но с течение на времето игралната индустрия отбеляза огромен ръст по отношение на технологиите и бр...
Най-добрите игри за игра с ръчно проследяване
Oculus Quest наскоро представи страхотната идея за ръчно проследяване без контролери. С непрекъснато нарастващия брой игри и дейности, които изпълнява...
Как да покажете OSD наслагване в приложения на цял екран за Linux и игри
Играта на цял екран или използване на приложения в режим на цял екран без разсейване може да ви откъсне от съответната системна информация, видима в п...