Göm meny
Gäller för: HT25

Felsökning

Innehåll


Denna uppgift är en övning i att felsöka pythonkod.

I kurskatalogen /courses/729G46/kursmaterial/temauppg2/ finns en fil not_quite_right.py. Om du inte kan komma åt filsystemet på LiU kan du ladda ner en zippad version av katalogen. Personen som har skrivit koden har inte testat sin kod, och den innehåller ett antal fel och buggar. Hen har inte heller kommenterat sin kod alls. Er uppgift är att gå igenom koden, testa den, identifiera och fixa de buggar som finns samt att klura ut vad det är tänkt att den ska göra, lägga till kommentarer och ändra namn så att koden är lättare att förstå.

Det kommer finnas flera typer av fel. Vissa av felen kommer python säga till om direkt (syntaxfel), andra fel kommer att krasha programmet medan det körs (runtimefel), och andra kommer inte att krasha alls, utan bara ge oväntade/fel resultat (logiska fel). Det räcker med andra ord inte med att ni bara kör koden tills den inte krashar längre, utan ni behöver klura ut vad det är menat att funktionen ska göra, och se till att den gör det. Var inte rädda för att lägga till, ta bort, byta namn på eller ändra delar av koden.

Ni får anta att det som funktionen tar in som argument är en lista som kan innehålla antingen andra listor eller värden, och alla värden (i både den yttre och de inre listorna) är av samma typ. En del av uppgiften är att komma på vilka listor som ska skickas in till funktionen för att testa den ordentligt. Tänk på vilka listor som utgör gränsfall och som kanske funktionen har svårt att hantera och testa med dem.

Notera de fel ni hittar i koden och rätta till dem. Lägg till beskrivande kommentarer för vad de olika delarna av funktionen gör, och ge funktionen ett nytt, mer beskrivande namn som motsvarar er uppfattning av vad den gör.


Sidansvarig: Johan Falkenjack
Senast uppdaterad: 2025-08-12