Level 3Ordbøker

Skrevet av: Ole Kristian Pedersen, Kodeklubben Trondheim

Oversatt av: Stein Olav Romslo

Kurs: Python
Tema: Tekstbasert
Fag: Programmering, Engelsk
Klassetrinn: 5.-7. klasse, 8.-10. klasse, Videregående skole
Bilde av BokmålPå Bokmål

Introduksjon

Dette er ei kort oppgåve som viser korleis ein brukar ordbøker.

Nøklar og verdiar

Ei ordbok (dictionary på engelsk) blir brukt for å lagre nøkkel/verdi-par. Tenk deg at du skal ha ei norsk-engelsk ordbok. Då vil nøkkelen vere ordet du slår opp på, til dømes det norske ordet. Verdien er den engelske omsetjinga av det norske ordet. Til dømes kan nøkkelen vere "ost" og verdien vere "cheese". I Python skriv me ordbøker med krøllparentesar, {}, slik som dette:

>>> d = {'ost':'cheese', 'brød':'bread'}
>>> d
{'ost': 'cheese', 'brød': 'bread'}

I dømet over laga me ei norsk-engelsk ordbok til variabelen d. Nøkkel og verdi har eit : mellom seg, og 'nøkkel':'verdi'-para skil me med komma, ,. For å slå opp på ein nøkkel brukar me [nøkkel], slik som dette:

>>> d['ost']
'cheese'

Me kan bruke den same skrivemåten for å lage ny nøkkel/verdi-par eller endre verdien som er knytta til ein nøkkel.

>>> d['farge'] = 'colour'

# legg til ein ny verdi
>>> d
{'ost': 'cheese', 'brød': 'bread', 'farge': 'colour'}
>>> d['farge'] = 'color'

# endrar verdien
>>> d
{'ost': 'cheese', 'brød': 'bread', 'farge': 'color'}

Du kan opprette ei tom ordbok slik:

>>> d = {}
>>> d
{}

Merk: Det er berre tekst og tal som kan brukast som nøklar, men verdiane kan vere kva som helst: tekstar, tal, lister, ordbøker, funksjonar, osb.

Prøv sjølv

No skal me skrive eit program som let ein brukar lage ei ordbok. Programmet skal ta imot 3 nøkkel/verdi-par, og så be om ein nøkkel å slå opp på, for så å vise verdien som høyrer til nøkkelen. Det skal fungere slik:

Skriv inn ein nøkkel: ost
Skriv inn ein verdi: cheese
Skriv inn ein nøkkel: brød
Skriv inn ein verdi: bread
Skriv inn ein nøkkel: farge
Skriv inn ein verdi: color
Kva nøkkel vil du slå opp på? brød
Tilhøyrande verdi er bread

Dette må du gjere:

Gå gjennom ordbøker

Du kan bruke ei løkke til å hente ut nøklane til ei ordbok:

>>> d = {'brød': 3, 'ost': 1}
>>> for key in d:
...     print("Nøkkel:", key)
...     print("Verdi:", d[key])
...
Nøkkel: ost
Verdi: 1
Nøkkel: brød
Verdi: 3

Viss du berre treng verdiane kan du bruke d.values():

>>> for val in d.values():
...     print("Verdi:", val)
...
Verdi: 1
Verdi: 3

Viss du vil få tilgang til både nøkkel og verdi kan du bruke d.items():

>>> for key, value in d.items():
...     print(key, value)
...
ost 1
brød 3

checkHandleliste

No skal me lage eit handlelisteprogram som let brukaren velje kva og kor mykje som skal vere på handlelista. Programmet skal sjå slik ut:

Skriv inn ein gjenstand: brød
Kor mange? 2
Skriv inn ein gjenstand: tomat
Kor mange? 5
Skriv inn ein gjenstand:
Her er handlelista:
2 brød
5 tomat

Dette må du gjere:

    • Be om antal.

    • Lagre til ei ordliste.

    • Bruk gjenstanden som nøkkel og antalet som verdi.

  • Hint: Gå gjennom nøklane.

Lisens: CC BY-SA 4.0

Forbedre denne siden

Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!