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.


Här kan du på egen hand förbereda dig genom att läsa i kurslitteraturen, jobba med övningar och dessutom lite annat material som är relevant.

  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.

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

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

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

  1. Titta igenom Play

Inför seminariet bör du ha arbetat igenom så mycket du kan i artikeln/övningen “Att läsa filer som strängar i Python” och “Att läsa filer till en lista i Python” samt läst motsvarande i kurslitteraturen.

Kort före seminariet publiceras de uppgifter och frågor som vi kommer att arbeta med under seminariet.

Läs om seminarier.

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

Läs instruktionen om hur du skall redovisa.

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

Som en del av din inlämning via GitHub svara på nedanstående frågor i din README.mdfil. Se till att du skriver om dina lärdomar och reflektioner. Vi vill inte läsa vad ChatGPT, Claude eller Copilot har för reflektioner, men vad ni har lärt er under veckan.

  • 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.