Python

Lese og skrive filer med Python

Lese og skrive filer med Python

Filer brukes til å lagre og organisere data på en disk. Vi bruker ofte filer når vi trenger å lagre data permanent på en harddisk. La oss for eksempel si at vi bygger et programvaresystem som opprettholder studentjournaler. Nå må vi lagre studentdataene permanent for fremtidig bruk. For dette formålet kan vi bruke filer til å lagre data, og senere kan vi åpne disse filene og få tilgang til de lagrede dataene når som helst.

Lese og skrive filer er veldig vanlige funksjoner i Python. Det er enkelt å lage, lese og redigere filer i Python. Python kommer med innebygde funksjoner for lesing og skriving av filer. Du kan åpne, skrive og lese filer ved hjelp av de innebygde Python-funksjonene. Filoperasjonene utføres i følgende rekkefølge:

Ved hjelp av Python kan du opprette tekstfiler og binære filer. Tekstfiler lagrer data i form av tegn, og hver linje slutter med et nytt linjetegn ('\ n'). I binære filer lagres data i form av byte (1 og 0).

I denne artikkelen vil du lære:

Ulike filmodi i Python

Modus i Python beskriver typen operasjon som skal utføres på filen. Når du åpner en fil, må du spesifisere modusen. Hver fil har et filhåndtak. Filhåndtaket fungerer som en markør som spesifiserer hvor du skal skrive og lese data. Det er en type plasseringspeker. Følgende inkluderer noen av de forskjellige tilgangsfilmodusene i Python:

Modus Beskrivelse
r Åpner filen i lesemodus. Denne modusen er valgt som standard hvis du ikke definerer noen modus mens du åpner filen i Python.
w Skriver en fil. Denne modusen oppretter en fil hvis filen ikke allerede eksisterer og overskriver dataene i filen.
r+ Brukes til å lese og skrive filen. Det viser en feil hvis filen ikke eksisterer.
en Åpner filen i tilleggsmodus. Filhåndtaket er plassert på slutten av filen. Denne modusen overskriver ikke eksisterende data, men begynner å skrive data på slutten av filen. En ny fil opprettes hvis filen ikke eksisterer.
en+ Åpner filen for lesing og skriving. Dette åpner filen i tilleggsmodus for skriving. Dataene settes inn på slutten av filen. En ny fil opprettes hvis filen ikke eksisterer.
t Åpner filen i tekstmodus.

Hvordan åpne en fil

For å åpne en fil i Python, bruk den innebygde åpen() funksjon. Open () -funksjonen tar to argumenter som inndata, i.e., navnet på filen og driftsmåten. Denne funksjonen returnerer filobjektet som en utgang. Det er ikke nødvendig å importere noen modul for å bruke funksjonen open (). Følgende er syntaksen for open () -funksjonen:

file_object = open (“filnavn”, “modus”)

Her representerer 'filnavn' navnet på den faktiske tekstfilen, mens 'modus' representerer filtilgang eller filoperasjonsmodus. Du kan også plassere r før 'filnavn', hvis filnavnet inneholder spesialtegn. R plasseres som følger:

= file_object = open (r “filnavn”, “modus”)

For eksempel kan filnavnet være: “F: \ newfolder \ myfile.tekst"

Hvordan lage en fil

Den åpne () funksjonen kan brukes til å lage filer i Python. Bruk tilleggsmodus (a) inne i åpen () -funksjonen for å opprette filen. Opprett en fil ved å bruke koden nedenfor:

file = open ("prøve.txt "," a ")

Her opprettes et nytt filobjekt. Filobjektet heter "fil.”Navnet på den nylig opprettede tekstfilen er“ eksempel.tekst.”Tekstfilen åpnes i tilleggsmodus. Den vil opprette den nye filen hvis filen ikke allerede eksisterer. Etter at du har opprettet filen, må du lukke filen på følgende måte:

fil.Lukk()

Den innebygde close () -funksjonen brukes til å lukke filen.

Hvordan skrive data til en fil

Det er to funksjoner i Python som brukes til å skrive data i en fil:

  1. skrive()
  2. writelines ()

Skriv () -funksjonen brukes til å skrive data med en linje eller enkelt streng til en fil, mens funksjonen for skrivelinjer () brukes til å skrive flere linjer med data til en tekstfil. La oss se noen eksempler på å skrive data til en fil.

Bruke skriv-funksjonen

I dette eksemplet bruker vi skrive () -funksjonen til å skrive data til en fil. Filen åpnes i skrivemodus. “\ N” er plassert for å spesifisere slutten av linjen.

# opprette et nytt filobjekt og åpne en fil i skrivemodus
file = open ("prøve.txt "," w ")
# skriver en linje til en fil
fil.skriv ("Velkommen til linuxhint \ n")
# skriver en annen enkelt linje til en fil
fil.skriv ("Velkommen tilbake")
#lukker filen
fil.Lukk()

Produksjon

Linjene er skrevet i tekstfilene.

Hvis vi åpner filen i skrivemodus og ber skrive () -funksjonen om å skrive flere linjer til filen, vil den overskrive de forrige dataene og nye data vil bli lagt til i tekstfilen.

# opprette et nytt filobjekt og åpne en fil i skrivemodus
file = open ("prøve.txt "," w ")
# skriver en linje til en fil
fil.skriv ("Hei alle sammen \ n")
# skriver en annen enkelt linje til en fil
fil.skriv ("Dette er den erstattede strengen")
#lukker filen
fil.Lukk()

Produksjon

I utgangen kan det sees at de forrige dataene byttes ut og nye data legges til i stedet for i tekstfilen.

Hvis vi vil beholde både forrige og nye data i filen, kan vi åpne filen i tilleggsmodus, slik:

# opprette et nytt filobjekt og åpne en fil i tilleggsmodus
file = open ("prøve.txt "," a ")
# skriver en linje til en fil
fil.skriv ("Hei alle sammen \ n")
# skriver en annen enkelt linje til en fil
fil.skriv ("Dette er den erstattede strengen \ n")
# skriver en ny ny enkeltlinje til en fil
fil.skriv ("Dette er den nystrengte strengstrengen \ n")
#lukker filen
fil.Lukk()

Produksjon

Bruke Writelines () -funksjonen

Writelines () -funksjonen brukes til å skrive flere linjer i en tekst samtidig, som følger:

# opprette et nytt filobjekt og åpne en fil i skrivemodus
file = open ("fil1.txt "," w ")
# lagring av flere strengdata i en variabel
str = ["Hei alle sammen \ n", "Velkommen til linuxhint \ n", "vi bruker Writelines-funksjonen \ n"]
# bruker Writelines-funksjoner til å skrive data i en fil
fil.writelines (str)
#lukker filen
fil.Lukk()

Produksjon

Hvordan lese en fil

For å lese en fil i Python, må du først åpne filen i lesemodus. Det er tre innebygde funksjoner i Python for å lese en fil. Disse inkluderer følgende:

  1. lese()
  2. readline ()
  3. readlines ()

lese(): Brukes til å lese dataene fra en fil; returnerer hele dataene i form av streng.

readline (): Leser en datalinje fra en fil; returnerer bare første linje.

readlines (): Leser alle eksisterende linjer fra en fil; returnerer den i form av en liste.

Funksjonen seek () brukes til å endre posisjonen til filhåndtaket. Når du leser data i filen, plasserer filhåndtaket seg på slutten av filen. Dermed er et filhåndtak som en markør, med søk () -funksjonen som middel til å flytte markøren.

La oss se et eksempel på å lese data fra filen.

# åpne en fil i lesemodus
file = open ("fil1.txt "," r ")
# bruker read () -funksjonen til å lese dataene fra filen
# lagring av linjene i en variabel
data = fil.lese()
# å skrive ut dataene
print ("Dette er utdata fra read () -funksjonen: \ n")
skriv ut (data)
# bruker søk () -funksjonen for å bringe filposisjonen i start
fil.søk (0)
# bruker readline () -funksjonen til å lese dataene fra filen
# lagring av linjene i en variabel
data = fil.readline ()
# å skrive ut dataene
print ("Dette er utdata fra readline () -funksjonen: \ n")
skriv ut (data)
# bruker søk () -funksjonen for å bringe filposisjonen i start
fil.søk (0)
# bruker readlines () -funksjonen til å lese dataene fra filen
# lagring av linjene i en variabel
data = fil.readlines ()
# å skrive ut dataene
print ("Dette er utdata fra readlines () -funksjon: \ n")
skriv ut (data)
#lukker filen
fil.Lukk()

Produksjon

Konklusjon

Det er ofte nødvendig å lagre informasjon eller data i en fil. I Python kan du enkelt opprette, skrive og lese filer ved hjelp av de innebygde Python-funksjonene. Det er ikke nødvendig å importere andre moduler til programmet ditt når du vil lese, skrive og opprette filer. Du kan også bruke flere innebygde tilgangsmoduser mens du bruker filene. I denne artikkelen har vi forklart hvordan du leser og skriver filer i Python med noen enkle eksempler.

Topp 10 spill å spille på Ubuntu
Windows-plattformen har vært en av de dominerende plattformene for spill på grunn av den enorme andelen spill som utvikles i dag for å støtte Windows ...
5 beste arkadespill for Linux
I dag er datamaskiner seriøse maskiner som brukes til spill. Hvis du ikke kan få den nye høye poengsummen, vil du vite hva jeg mener. I dette innlegge...
Kamp for Wesnoth 1.1. 3.6 Utvikling utgitt
Kamp for Wesnoth 1.1. 3.6 utgitt i forrige måned, er den sjette utgivelsen i 1.1. 3.x-serien, og den leverer en rekke forbedringer, spesielt til bruke...