Listor och Kataloger
Föreläsning 8 – Listor (kapitel 10.1–10.10, 11.1–11.6)
- Slides: lecture08_p3.pdf
- Kodexempel:
- letterCounts.py — räkna bokstäver
- sumFromTo.py — summering
- Nyckelbegrepp: listor, index, append, len, traversering, nästlade listor, alias, kopia
Föreläsning 9 – Rekursion på listor (kapitel 10.10–10.13)
Koncept: Listor, Rekursion, Kataloger
- Slides: lecture09_p3.pdf
- Kodexempel:
- f8_chooseLargestSum.py — välj lista med störst summa
- f5_fact_fib.py — fakultet och fibonacci
- fib.py — fibonacci
- f8_recursiveListExamples.py — rekursion på listor
- f10_copy.py — kopiering av listor
- Nyckelbegrepp: rekursion på listor, djup kopia, alias, fibonacci, fibonacci-rekursion
Övning F8 – Listsummering och urval
sumRec(lst)— summera alla tal i lst rekursivt.sumIter(lst)— summera alla tal i lst iterativt.selectLargest(lstlst)— ta en lista av listor, returnera aliasreferens till listan med störst summa.- Lösning: select_largest.py
- Nyckelbegrepp: listor, rekursion, iteration, alias, lista av listor
Övning F9 – Histogram (kataloger/dictionaries)
histogram(str)— returnera katalog med tecken som nycklar och frekvens som värde.histogram2(str)— returnera lista av par (tecken, frekvens) utan katalog.printHist(hist)— skriv ut tabellformad utskrift av histogrammet.- Lösning: histogram.py
- Nyckelbegrepp: dictionary, nyckel, värde, items(), frekvens, histogram
Lab 3 – Ordlista (deadline: 2026-02-23)
Koncept: Kataloger, Listor, Funktioner
- Uppgift 0 (övning, ej betygsatt): menysystem för Lab 2-funktioner.
- Huvuduppgift: implementera ett ordlisteprogram (dictionary-baserat).
- Krav: välstrukturerad kod, dela upp i funktioner.
- Nyckelbegrepp: dictionary, listor, menysystem, filhantering (möjligt)
- Inlämning: filuppladdning i Canvas + redovisning för handledare