Lese og skrive filer
Bruk read_text og write_text
Lese og skrive filer er en gratis leksjon i Python Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Python Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Python Academy inneholder totalt 4 leksjoner.
Filinndata og -utdata med pathlib
pathlib-stier kan lese og skrive filer direkte, uten et eksplisitt kall til open() i enkle tilfeller. Metodene read_text, write_text, read_bytes og write_bytes dekker de vanligste behovene.
write_text
write_text() skriver en streng til filen, oppretter den om nødvendig og erstatter eventuelt eksisterende innhold. Metoden returnerer antallet tegn som ble skrevet.
from pathlib import Path
p = Path('greeting.txt')
n = p.write_text('Hello, pathlib!')
print('wrote', n, 'characters')read_text
read_text() åpner filen, leser hele innholdet og lukker den, og returnerer alt innholdet som en streng.
from pathlib import Path
p = Path('greeting.txt')
p.write_text('Hello, pathlib!')
content = p.read_text()
print(content)Ingen manuell lukking er nødvendig
Disse hjelpemetodene åpner og lukker filen for Dem, slik at De slipper standardkoden i en with open(...)-blokk for engangslesing og -skriving.
from pathlib import Path
p = Path('notes.txt')
p.write_text('line one')
print(p.read_text())Angi tegnkoding
Angi et encoding-argument for å kontrollere tekstkodingen. UTF-8 er et trygt og eksplisitt valg som fungerer på tvers av plattformer.
from pathlib import Path
p = Path('uni.txt')
p.write_text('cafe resume', encoding='utf-8')
print(p.read_text(encoding='utf-8'))Arbeide med byte
Bruk write_bytes() og read_bytes() for binærdata. Disse håndterer bytes-objekter i stedet for strenger.
from pathlib import Path
p = Path('data.bin')
p.write_bytes(b'\x00\x01\x02')
print(p.read_bytes())Tilføyelse og avanserte moduser
Hjelpemetodene for engangsoperasjoner overskriver alltid innholdet. For tilføyelse eller strømming kan De kalle open() på Path-objektet for å få et vanlig filobjekt som kan brukes i en with-blokk.
from pathlib import Path
p = Path('log.txt')
p.write_text('start\n')
with p.open('a') as f:
f.write('more\n')
print(p.read_text())Lese linje for linje
Les all tekst og del den deretter opp i linjer, eller åpne stien og iterer over den. Det enkleste for små filer er å dele opp resultatet fra read_text().
from pathlib import Path
p = Path('multi.txt')
p.write_text('a\nb\nc\n')
for line in p.read_text().splitlines():
print('line:', line)Opprette overordnede mapper
Skriving mislykkes hvis den overordnede mappen ikke finnes. Bruk først mkdir(parents=True, exist_ok=True) på den overordnede mappen for å opprette hele mappestrukturen.
from pathlib import Path
p = Path('out/sub/file.txt')
p.parent.mkdir(parents=True, exist_ok=True)
p.write_text('done')
print(p.read_text())Slette filer
Fjern en fil med unlink(). Ved å angi missing_ok=True unngår De en feil hvis filen allerede er borte.
from pathlib import Path
p = Path('temp.txt')
p.write_text('bye')
print(p.exists())
p.unlink(missing_ok=True)
print(p.exists())Les, transformer, skriv
Et vanlig mønster er å lese en fil, transformere teksten og skrive den tilbake. pathlib gjør dette til en ryddig operasjon på tre linjer.
from pathlib import Path
p = Path('caps.txt')
p.write_text('hello world')
p.write_text(p.read_text().upper())
print(p.read_text())Rask kontroll
Hva gjør Path('a.txt').write_text('hi') hvis filen allerede finnes?
Oppsummering
De har lært å lese og skrive filer med pathlib.
write_text/read_texthåndterer strengbasert inndata og utdata for hele filer.write_bytes/read_byteshåndterer binærdata.- Bruk
open()for tilføyelse eller strømming. - Opprett overordnede mapper med
mkdir, og fjern filer medunlink.
Lær deg Python med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 76
- Leksjoner
- 320
Ofte stilte spørsmål
Er leksjonen «Lese og skrive filer» gratis?
Ja – hele teksten i «Lese og skrive filer» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Python Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Python Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Lese og skrive filer»?
Bruk read_text og write_text Du øver på Python Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Python Academy?
Ingen tidligere erfaring er nødvendig. Python Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Lese og skrive filer»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Python Academy-leksjonen?
Ja. Alle Python Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Path-objektet
- Lese og skrive filer
- Globbing og iterasjon
- Manipulering av stier