Hvordan lese og skrive filer i Python
Å lese fra og skrive til filer er en vanlig oppgave i programmering, og Python gjør det enkelt med sine innebygde filhåndteringsmuligheter. Å forstå hvordan du jobber med filer er avgjørende for enhver Python-programmerer, siden det lar deg håndtere datalagring, logging, konfigurasjonsadministrasjon og mer. Denne veiledningen vil dekke hvordan du åpner, leser, skriver og lukker filer i Python, samt hvordan du håndterer forskjellige filmoduser.
Åpne og lukke filer
I Python bruker du funksjonen open()
for å åpne en fil. open()
-funksjonen returnerer et filobjekt, som gir metoder for lesing og skriving. Det er viktig å lukke en fil etter at du er ferdig med den ved å bruke close()
-metoden for å frigjøre systemressurser.
# Opening and closing a file
file = open("example.txt", "r") # Open file for reading
# Perform file operations
file.close() # Close the file
Leser filer
Det er flere måter å lese innholdet i en fil i Python, avhengig av dine behov:
Les hele filen
read()
-metoden leser hele innholdet i filen i en enkelt streng.
# Reading the entire file
with open("example.txt", "r") as file:
content = file.read()
print(content)
Les linjer i en fil
readline()
-metoden leser én linje fra filen, mens readlines()
leser alle linjer og returnerer dem som en liste.
# Reading lines using readline()
with open("example.txt", "r") as file:
line = file.readline()
while line:
print(line.strip())
line = file.readline()
# Reading all lines using readlines()
with open("example.txt", "r") as file:
lines = file.readlines()
for line in lines:
print(line.strip())
Lese filer linje for linje
Den foretrukne metoden for å lese en fil linje for linje er å bruke en for
-løkke direkte på filobjektet. Denne tilnærmingen er minneeffektiv, spesielt for store filer.
# Reading file line by line using a for loop
with open("example.txt", "r") as file:
for line in file:
print(line.strip())
Skrive til filer
Python lar deg skrive til filer ved å bruke metodene write()
og writelines()
. Du må åpne filen i en modus som støtter skriving, for eksempel 'w'
(skriv) eller 'a'
(legg ved).
Skrive til en fil
write()
-metoden skriver en enkelt streng til en fil. Åpning av en fil i skrivemodus 'w'
vil opprette en ny fil eller overskrive en eksisterende fil.
# Writing to a file
with open("output.txt", "w") as file:
file.write("Hello, World!\n")
file.write("This is a new line.")
Legger til en fil
Åpne en fil i tilleggsmodus 'a'
lar deg legge til innhold på slutten av en eksisterende fil uten å overskrive innholdet.
# Appending to a file
with open("output.txt", "a") as file:
file.write("\nThis line is appended.")
Skrive flere linjer
writelines()
-metoden brukes til å skrive flere linjer til en fil. Den forventer en liste over strenger, som hver representerer en linje.
# Writing multiple lines to a file
lines = ["Line 1\n", "Line 2\n", "Line 3\n"]
with open("output.txt", "w") as file:
file.writelines(lines)
Filmoduser
Pythons open()
-funksjon støtter flere moduser for å åpne filer:
'r'
- Lesemodus (standard). Åpner en fil for lesing.'w'
- Skrivemodus. Åpner en fil for skriving (oppretter en ny fil eller avkorter en eksisterende fil).'a'
- Legg til modus. Åpner en fil for å legge til (oppretter en ny fil hvis den ikke eksisterer).'r+'
- Lese- og skrivemodus. Åpner en fil for både lesing og skriving.'b'
- Binær modus. Åpner en fil i binær modus (brukes med'rb'
,'wb'
, etc.).
Konklusjon
Å lese fra og skrive til filer i Python er enkelt når du forstår de grunnleggende konseptene og filmodusene. Ved å mestre filhåndtering kan du effektivt administrere data, håndtere brukerinndata/utdata og automatisere oppgaver som involverer filoperasjoner. Øv deg på å bruke disse teknikkene for å bli dyktig i filbehandling i Python.