Forelesning 30. april

Siste forelesning med eksempelet om kommuner og fylker i Norge.

Alle filene vi brukte finner du i denne mappa.

Vi starta med fylker_og_kommuner_04.py

  • Land er hovedobjektet som inneholder ei ordbok med fylker (fylkesobjekter)
  • Et fylkesobjekt inneholder ei liste med kommuner (objekter)
  • I klassen Kommune er konstrukt?ren forenkla slik at kun kommunenavn og fylkesnavn m? oppgis n?r kommuneobjekter opprettes. (I tidligere versjoner m?tte argumentet v?re ei liste med 6 tekststrenger med info om kommunen).

I klassen Kommune defineres en 'magisk metode' (__str__) som definerer hva som skrives ut hvis et kommuneobjekt gis som argument til print()-funksjonen.

Til sist i versjon 4 leser vi inn mer kommuneinfo fra fil og tester at vi har kommunene fra denne filen i strukturen fra f?r.

I fylker_og_kommuner_05.py defineres en funksjon (fra_str_til_tall) som henter ut en tallverdi fra en streng med siffer, blanke og desimalkomma. Denne blir brukt n?r vi i hovedprogrammet legger mer informasjon om kommunene (fra filen mer_kommuneinfo.txt) inn i kommuneobjektene. __str__-metoden i Kommune utvides tilsvarende.

I fylker_og_kommuner_06.py utvides fylkesobjekter til ? ogs? inneholde info om gammelt fylkesnavn og -nummer f?r fylkesoppsplittinga 1. januar 2024. I tildligere versjoner er det dobbeltlagring av fylkesnummer og -navn i b?de fylkes- og kommuneobjekter. I versjon 6 fjernes  fylkesnummer og -navn fra kommuneobjektet. Denne infoen erstattes av at instansvariabelen self._fylke f?r en referanse/peker til fylkesobjektet som inneholder denne infoen i stedet. __str__-metoden i Kommune utvides.

I siste versjon, fylker_og_kommuner_07.py flyttes opprettelse av kommuneobjekter fra hovedprogramet til metoden legg_til_kommune i fylkesobjektene. Legg merke til hvordan self brukes som argument ved opprettelsen av et kommuneobjekt. self refererer til det fylkesobjektet medtoden kalles i/fra.

 

Det vil v?re god eksamenstrening ? utvide/endre programmet ved f.eks.

  • definere 'magiske metoder' i fylker og kommuner for ? bestemme likhet og ulikhet
  • finne hvilken kommune som har flest innbyggere
  • finne hvilket fylke som har flest innbyggere
  • det samme for minst/st?rst areal
  • antall kommuner som har administrasjonssted med samme navn som kommunen
  • skrive ut kommuner med samme navn (hvis noen?)
  • utvide eksempelet med flere land som ogs? er delt inn i regioner/fylker og kommuner/distrikter
  • ...

 

 

 

 

Publisert 29. apr. 2024 15:53 - Sist endret 3. mai 2024 18:19