Hoppa till innehållet
AI-grafen
C· Byggareprogrammering· ca 30 min· grundläggande — ändras sällan· verifierad 2026-09-20

Python — filer, CSV och JSON

Kunna läsa och skriva filer, CSV och JSON och hantera fel vid inläsning.

Förkunskaper

Intuition

Data bor i filer. Tre format du möter hela tiden:

  • Textfil (.txt): rader.
  • CSV: tabell, en rad per post, kolumner separerade med komma eller semikolon.
  • JSON: nästlade listor och ordböcker — exakt Pythons list och dict.

Öppna alltid med with open(...) as f: — filen stängs automatiskt även om något går fel. Ange encoding="utf-8", annars kan å, ä, ö bli fel på vissa datorer.

Kod

import csv, json

with open("elever.csv", encoding="utf-8") as f:
    rader = list(csv.DictReader(f, delimiter=";"))
print(rader[0])                 # {'namn': 'Anna', 'poang': '14'}
total = sum(int(r["poang"]) for r in rader)

data = {"klass": "8B", "elever": rader}
with open("klass.json", "w", encoding="utf-8") as f:
    json.dump(data, f, ensure_ascii=False, indent=2)

try:
    with open("finns_inte.csv") as f:
        ...
except FileNotFoundError:
    print("Filen saknas — kontrollera sökvägen")

CSV ger alltid strängar — konvertera själv. JSON behåller typer (tal, listor, true/false).

Behärskning innebär

  • Läser och skriver textfiler med with
  • Läser CSV och JSON till Python-strukturer
  • Hanterar fel vid inläsning

Logga in för att göra övningarna och bygga upp din behärskning.

Källor

Alla källor och licenser