Filer

Både skriving til fil og lesing fra fil er enkelt i Python.


Eksempel #1 på lesing fra fil:

with open("inndata.txt") as filobjekt:
   innhold = filobjekt.read()
   # variabelen innhold har nå alt innhold fra filen inndata.txt

Problemet her er at man ofte ikke vil ha alt på en gang. F.eks. kan filer være store og derfor forårsake problemer hvis innholdet tar opp veldig mye plass.

Eksempel #2 på lesing fra fil:

with open("inndata.txt") as fileobjekt:
   for linje in fileobjekt:
   # gir en og en linje fra inndata.txt

Her derimot får man bare èn linje om gangen som man så kan gjøre noe med.


Å skrive til en fil er også ganske enkelt.

Eksempel på (over)skriving:

with open("utdata.txt", "w") as filobjekt:
   filobjekt.write("Dette er en test!")
   # her skrives "Dette er en test!" til
   # filen utdata.txt som opprettes eller erstattes

Eksempel på tillegging:

with open("utdata.txt", "a") as filobjekt:
   filobjekt.write("\n")
   filobjekt.write("Dette er en test!")
   # her lages ny linje også skrives "Dette er en test!"
   # på slutten av filen utdata.txt

Den store forskjellen er i grunn a (for «append») i stedet for w (for «write»).


For direkte skriving og lesing av objekter brukes følgende:

import json

with open("objekt.json", "w") as filobjekt:
   json.dump(objekt, filobjekt)
import json

with open("objekt.json") as filobjekt:
   objekt = json.load(filobjekt)

Hvor objektet f.eks. kan se slik ut:

objekt = {
   "navn": "",
   "epost": "post@ovebakken.no"
}

Dette objektet er uttrykt ved hjelp av JSON (som står for «JavaScript Object Notation»), men også lister og tupler kan behandles.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.