Tidligere i semesteret har vi brukt Python Tutor til å finne feil i kode, og til å gå gjennom koden steg for steg og se hva som skjer i maskinen.
Da kan vi se hvilken rekkefølge kodelinjen kjøres i, og vi kan på hvert steg se hva variablene våre inneholder.
Det er veldig greit, så lenge alle kodene er i samme fil som vi kan lime inn i Python Tutor.
Problemet blir at kodene våre ligger i flere forskjellige filer, og da kan vi ikke bruke Python Tutor på denne måten.
Så det vi kan gjøre i stedet er å bruke Visual Studio Code sin egen debugger.
Vi kan starte med å velge Run i menyen og Start Debugging.
Det som skjer hvis jeg bare gjør det, er at kodene bare kjører gjennom koden uten at vi får pauser og stopper gjennom steg for steg.
Så det vi må gjøre er å gi programmet beskjed om at et eller annet sted må vi pause og gå gjennom steg for steg.
Da tar jeg flyttemuspekken til venstre for linjenummeret, og da ser jeg at det dukker opp en rød prikk ved siden av her.
Hvis jeg trykker på den, så blir den lysrød, så sier jeg til debuggeren at her skal du pause og begynne å gå gjennom steg for steg.
Så nå tar Run og Start Debugging.
Så kjører programmet helt til linje 5, og her er den aktive linjen som vi er på akkurat nå.
Da kan jeg se på hvilke variabler som ligger her.
Så den neste linjen som skal kjøres er linje 5, for jeg ser at antall simulatoringer er den variablen som skal tilordnes, siden linja er ikke satt der enda.
Hvis jeg da trykker på denne knappen her hvor det står Step Over, så kan jeg gå til neste linje.
Da kan jeg se at her er den variablen Antall simulatoringer.
Jeg kan også se på andre variabler som ligger her, for eksempel laglister som ble importert.
Her ser jeg index og hvilke elementer som ligger her, det er disse lagobjektene.
Jeg kan for eksempel gå inn og se hvilket lag som er det første her, og hvilket som er det neste.
Så jeg kan se ganske detaljert informasjon om objekter som ligger i variabler sammenlignet med det jeg kunne gi på et tutu, selv om det ser litt annerledes ut.
Jeg kan også stoppe innvøyningen og trykke på stopp-knappen, eller jeg kan starte den på nytt ved å trykke på denne restart-knappen som ligger her.
Da kan jeg gå tilbake til dit jeg ville starte igjen.
Hvis jeg bare tar Step Over, så kjører den bare det som ligger i fila og program, og så stopper den der.
Hvis jeg vil se hva som skjer her i statistikkklassen som ligger i denne fila, så kan jeg gjøre noe annet.
Jeg kan starte debugging igjen.
Nå er vi her, og kan ta og gå med Step Over et steg til.
Hvis jeg fortsetter å ta Step Over her, så går den videre uten å gå inn i statistikk.py.
Men hvis jeg trykker på denne pilen som blikker ned, hvor det står Step Into, så vil jeg da gå inn i konstruktøren som kjøres, når jeg oppretter et nytt statistikkobjekt.
Da kan jeg se hva som skjer i konstruktøren her, steg for steg.
Jeg kan se for eksempel denne self-plaseringen, hva det er for noe.
Jeg går inn og ser på disse varialene som ligger her.
Plaseringen, jeg kan se at det er en dictionary, en ordbok, som er tom for det å vie.
Men etter hvert som denne forløkka går, så vil det dukke opp flere og flere nøkler og verdier i denne ordboka.
Da kan jeg gå inn og se hva som ligger her.
Det ser ut som lag, nøkkel, og verdien er en lista hvor alle tallene er like null, for eksempel.
Men hvis jeg vil tilbake igjen til hovedprogrammet og gå ut av denne statistikk-pilen, så kan jeg også trykke på denne pilen som går oppover, Step Out.
Da hopper jeg tilbake hit, og kan gå videre.
Sånn kan jeg velge hvor detaljert jeg vil gå inn i forskjellige klasser av filer.
Men jeg kan fortsatt jobbe med å debugge flere forskjellige filer på samme tid.
Så jeg håper det tilhelper meg å gå inn.