Skip to content

Kmom06: Filhantering

Som vi jobbat i tidigare kursmoment försvinner all data när vi stänger av programmet, vi har ingen permanent data. Genom att skriva ner data i filer under exekvering kan vi uppnå ett permanent minne åt våra program. I detta kursmomentet kommer ni lära er läsa data från fil och hur man skriver ner data till fil.

Vi skapar ett nytt program där vi får öva mycket på dictionaries och listor för att bygga ett verktyg för textanalys.

Image description
Bild: Bokstävers frekvens i engelska språket.

Innan du börjar med kmom06 så behöver du ha jobbat igenom kmom05.


Vi fortsätter att läsa i boken Python for Everybody: Exploring data in Python3.

  1. Läs och jobba igenom följande kapitel i boken (alternativt kolla på videorna):

    • Ch7 Files

    De exempelprogram du gör i samband med att du läser i boken och tittar på tillhörande videor kan du spara i ditt kursrepo under src/kmom06/practice alternativt src/kmom06/practice_validate om du vill validera din kod.

  2. Titta igenom Play

  3. Jobba igenom artikeln/övningen Att läsa filer som strängar i Python.

  4. Jobba igenom artikeln/övningen Att läsa filer till en lista i Python.

  5. Jobba igenom artikeln/övningen Absoluta och relativa sökvägar.


Jobba igenom seminarium kmom06. Det görs på onsdagens lektion.


  1. Lös uppgifterna under Uppgifter.

Inga lästips än så länge.

Följande uppgift skall utföras och resultatet skall redovisas.

Gör uppgiften Analysera text och ord. Spara alla filer under src/kmom06/analyzer.

Läs instruktionen om hur du skall redovisa.

Utöver en vanlig inlämning ska du också göra en Pull Request.

Se till att följande frågor besvaras i din redovisningstext i din rapportsida.

  • Varför är det viktigt att man stänger en fil när man är klar?
  • Var det svårt att hantera läsning från och skrivning till fil i python?
  • Vilken är din TIL för detta kmom?

TIL är en akronym för “Today I Learned” vilket leksamt anspelar på att det finns alltid nya saker att lära sig, varje dag. Man brukar lyfta upp saker man lärt sig och där man kanske hajade till lite extra över dess nyttighet eller enkelhet, eller så var det bara en ny lärdom för dagen som man vill notera.