Python

Hvordan lese og skrive tekstfiler i Python

Hvordan lese og skrive tekstfiler i Python
Denne artikkelen vil dekke en guide som forklarer ekstern filhåndtering i python. Hovedfokuset vil være på åpning og lukking av tekst og andre ikke-binære datafiler lagret på et lagringsmedium, slik at du kan kjøre forskjellige operasjoner på innholdet i de åpnede filene.

Åpning og lukking av en fil

For å lese data fra en tekstfil som heter “data.txt ”, må du bruke“ åpen ”-metoden som følger med offisielle Python-bygg. Sjekk eksempelkoden nedenfor:

f = åpen ('data.txt ',' r ')
f.Lukk()

Den første uttalelsen åpner “data.txt ”-fil i“ r ”(skrivebeskyttet) modus. Den "åpne" metoden godtar et filnavn og modus for håndtering av filen som argumenter. Foruten “r” -modus, er det også andre moduser som vil bli forklart senere. Kodebiten ovenfor kjører ikke noen operasjoner på den åpnede filen. Metoden “lukk” brukes til å lukke den åpnede filen rent slik at minnet kan frigjøres og for å unngå datakorrupsjon i den åpnede filen, som noen ganger kan skje hvis filen ikke lukkes ordentlig.

I stedet for å bruke "åpen" -metoden for å håndtere åpning og lukking av filer, kan du kombinere den med "med" nøkkelord og bruke "med åpen" uttalelse.

med åpen ('data.txt ',' r ') som f:
sende

Den viktigste fordelen med å bruke en "med åpen" uttalelse er at tolk automatisk lukker den åpnede filen trygt når "med åpen" kodeblokk blir analysert helt. Selv om søppeloppsamleren i Python automatisk lukker åpnede filer etter en stund i henhold til forhåndsinnstilte regler, sørger "med åpne" uttalelser for at filen lukkes så snart kodeblokken er ferdig for å frigjøre ressurser.

Leselinjer i en tekstfil

For å lese innholdet i en fil, bruk kodeeksemplet nedenfor:

med åpen ('data.txt ',' r ') som f:
data = f.lese()
skriv ut (data)

For eksempel hvis “data.txt ”-fil har 1-10 tall, hver på en ny linje, vil du få følgende utgang etter å ha kjørt ovennevnte kode:

1
2
3
4
5
6
7
8
9
10

Hele datadumpen av “dataene.txt-filen er lagret i "data" -variabelen. Hvis du vil lese linjer til en liste, kan du bruke følgende kodeeksempler:

med åpen ('data.txt ',' r ') som f:
data = f.readlines ()
skriv ut (data) med åpen ('data.txt ',' r ') som f:
data = liste (f)
skriv ut (data)

Merk at bruk av utdragene ovenfor kan gi deg “\ n” (newline) -tegnet på slutten av hvert element i listen. For å fjerne disse nye linjetegnene, kan det hende du må gå gjennom listen. Du kan både opprette en ny liste og fjerne nye linjetegn ved å bruke følgende kode i stedet:

data_list = []
med åpen ('data.txt ',' r ') som f:
for linje i f:
dataliste.legge til (linje.stripe ())
skriv ut (data_liste)

Å kjøre koden ovenfor gir deg følgende utdata:

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

Skrive data til en åpnet fil

For å skrive data til en fil som åpnes ved å bruke "med åpen" uttalelse, må du oppgi en annen åpningsmodus som argument. Her er noen av modusene:

Noen kodebiter som bruker forskjellige moduser for å skrive data, er oppført nedenfor.

For å skrive nytt innhold til en tekstfil mens du sletter eksisterende data, bruk følgende eksempel:

med åpen ('data.txt ',' w ') som f:
f.skriv ("1 \ n2")

Etter å ha kjørt utdraget ovenfor, 1-10 tall i “dataene.txt ”-fil skal erstattes av to nye linjer.

For å legge til linjer i begynnelsen av en tekstfil, må du bruke "søk" -metoden for å gå tilbake til startposisjonen til filbufferen:

med åpen ('data.txt ',' r + ') som f:
data = f.lese()
f.søk (0)
f.skriv ("- 1 \ n0 \ n")
f.skriv (data)

Etter å ha kjørt utdraget ovenfor, vil -1 og 0 tall legges til de to øverste linjene i “data.txt-filer.

For å legge til data på slutten av filen, bruk følgende eksempel:

med åpen ('data.txt ',' a ') som f:
f.skriv ("11 \ n12")

Etter å ha kjørt utdraget ovenfor, vil 11 og 12 tall legges til på slutten av filen.

Konklusjon

Innebygde klasser og metoder i Python gir en robust måte å håndtere tekstfiler på. Med bare noen få kodelinjer kan du manipulere eksisterende data i en fil, samt sette inn nye linjer.

Hvordan laste ned og spille Sid Meier's Civilization VI på Linux
Introduksjon til spillet Civilization 6 er et moderne syn på det klassiske konseptet som ble introdusert i serien av Age of Empires-spillene. Ideen va...
Hvordan installere og spille Doom på Linux
Introduksjon til Doom Doom-serien stammer fra 90-tallet etter utgivelsen av den originale Doom. Det ble en øyeblikkelig suksess, og fra den tiden og u...
Vulkan for Linux-brukere
Med hver nye generasjon grafikkort ser vi spillutviklere skyve grensene for grafisk troskap og komme et skritt nærmere fotorealisme. Men til tross for...