CByggareLaboration· ca 40 min· i webbläsaren
Labb: listor, loopar och dictionaries
Bearbeta listor med loopar, list comprehensions och dictionaries.
Lär ut: Python — listor, loopar och dictionaries
Kräver: Python — grunderna
Teori
Nästan all datahantering är loopar över listor. Du ska summera, filtrera och räkna förekomster — samma mönster som senare används på tusentals datapunkter.
Deluppgifter
- medelvarde(tal) — Returnera medelvärdet av en lista tal. Tom lista → 0.0.
- udda(tal) — Returnera en ny lista med bara de udda talen, i samma ordning.
- rakna(ord) — Returnera en dict ord → antal förekomster.
- vanligast(ord) — Returnera det vanligaste ordet (vid lika: det som kom först).
Startkoden
körs i din webbläsaredef medelvarde(tal):
# TODO: summan delat med antalet; tom lista → 0.0
...
def udda(tal):
# TODO: list comprehension med villkor
...
def rakna(ord):
# TODO: dict med .get(o, 0) + 1
...
def vanligast(ord):
# TODO: använd rakna() och max(..., key=...)
...
Du skriver koden, tester du inte ser avgör om den håller. Skapa ett gratis konto för att köra labben.
Prova diagnosenSkapa konto gratisFörväntade resultat
Alla tester gröna. medelvarde([1,2,3]) → 2.0; udda([1,2,3,4,5]) → [1,3,5]; rakna(['a','b','a']) → {'a':2,'b':1}; vanligast(['a','b','a']) → 'a'.
Vanliga fel
- Division med noll för tom lista — hantera fallet först.
dict[nyckel] += 1kraschar när nyckeln saknas: använd.get(k, 0).vanligastmedmax(d, key=d.get)returnerar vid lika det som kom först i dict-ordningen — det är rätt.