Python Academy · Lektion

Skrivning og tilføjelse til filer

Skriv nye data, og føj dem sikkert til eksisterende filer.

Lektion 2 af 414 trin

Skrivning og tilføjelse til filer er en gratis Python Academy-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Python Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Python Academy-kurset indeholder 4 lektioner i alt.

Introduktion

Skrivning og tilføjelse til filer lader dine programmer bevare data mellem kørsler.

Skrivetilstand 'w'

open('out.txt', 'w') opretter filen (eller tømmer den, hvis den findes). f.write('Hello') skriver strengen.
# with open('out.txt', 'w') as f:
#     f.write('Hello, World!')
print('write mode demo')

writelines()

f.writelines(list_of_strings) skriver hver streng i listen. Den tilføjer IKKE automatisk linjeskift.
lines = ['line1\n', 'line2\n']
# with open('out.txt', 'w') as f:
#     f.writelines(lines)
print('writelines demo')

Tilføjelsestilstand 'a'

open('log.txt', 'a') åbner til tilføjelse — nye data føjes til slutningen uden at slette det eksisterende indhold.
# with open('log.txt', 'a') as f:
#     f.write('new entry\n')
print('append mode demo')

Linjeskift i write()

write() tilføjer IKKE linjeskift automatisk. Du skal selv inkludere \n: f.write('line\n')
# with open('out.txt', 'w') as f:
#     f.write('first line\n')
#     f.write('second line\n')
print('newline demo')

Læse- og skrivetilstand 'r+'

open(f,'r+') åbner til både læsning og skrivning. Markøren starter i begyndelsen — skrivninger OVERSKRIVER eksisterende indhold.
# with open('out.txt', 'r+') as f:
#     f.seek(0, 2)  # go to end
#     f.write('appended')
print('r+ demo')

Tømning af buffere

f.flush() tvinger data i bufferen til disken. Nyttigt til logfiler, når du ønsker output i realtid.
# with open('log.txt', 'a') as f:
#     f.write('event\n')
#     f.flush()
print('flush demo')

print() til filer

print('text', file=f) skriver til en fil med prints formatering og tilføjer et linjeskift. Et praktisk alternativ til write().
# with open('out.txt', 'w') as f:
#     print('Hello', file=f)
print('print-to-file demo')

Mønster til atomisk skrivning

Skriv til en midlertidig fil, og omdøb den derefter til den endelige sti. Det forhindrer delvise skrivninger i at beskadige målfilen.
import tempfile, os
# with tempfile.NamedTemporaryFile('w', delete=False) as f:
#     f.write(data); tmp = f.name
# os.replace(tmp, 'out.txt')
print('atomic write demo')

JSON til fil

import json; json.dump(obj, f, indent=2) serialiserer Python-data til en JSON-fil på en overskuelig måde.
import json
data = {'name': 'Alice', 'age': 30}
# with open('data.json', 'w') as f:
#     json.dump(data, f, indent=2)
print(json.dumps(data, indent=2))

Binær skrivetilstand 'wb'

open('img.bin', 'wb') åbner til binær skrivning. Skriv bytes-objekter: f.write(b'\x00\xff')
# with open('out.bin', 'wb') as f:
#     f.write(bytes([0, 255, 128]))
print('binary write demo')

Hurtigt tjek

Hvad sker der med en eksisterende fil, når den åbnes med tilstanden 'w'?

Opsamling

Tilstanden 'w' afkorter filen, 'a' tilføjer til den, og 'r+' læser og skriver. Brug write() med et eksplicit \n. print(file=f) er et praktisk alternativ. Tøm bufferen for logning i realtid.

Fortsæt

Godt arbejde! Gå videre til den næste lektion for at fortsætte din fremgang.
Gratis at komme i gang

Lær Python med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
76
Lektioner
320

Ofte stillede spørgsmål

Er lektionen “Skrivning og tilføjelse til filer” gratis?

Ja — hele teksten til “Skrivning og tilføjelse til filer” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Python Academy-kurset, skal du opgradere til CoddyKit PRO. Python Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Skrivning og tilføjelse til filer”?

Skriv nye data, og føj dem sikkert til eksisterende filer. Du øver dig i Python Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Python Academy?

Der kræves ingen tidligere erfaring. Python Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “Skrivning og tilføjelse til filer”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Python Academy-lektion?

Ja. Alle Python Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Åbning og læsning af filer
  2. Skrivning og tilføjelse til filer
  3. Brug af with-sætningen til filer
  4. Arbejde med filstier med pathlib
← Tilbage til Python Academy