08 - Phyton andmetüübid: sõnastik PDF Trüki
Kirjutas Mario Metshein   

Sõnastik (dictionary) on struktuurne andmetüüp. Ta on nagu list, kuid palju üldisem. Listis on indeksiteks täisarvud. Sõnastikus võivad indeksiteks olla mistahes tüüpi väärtused. Sõnastiku puhul ei räägta siiski indekist vaid võtmest (key) ja igale võtmele vastab mingi väärtus.

Sõnastikus on väärtuste paarid, mis koosnevad võtmest ja väärtusest (key-value pair). Sõnastikku ei kutsuta ametlikult jadaks vaid vastetüübiks (mapping type). Suurem erinevus jadast on aga see, kuidas andmeid salvestatakse ja välja loetakse – nimelt on tegemist paisktüübiga (hashable type). Erinevalt jadast puudub sõnastikus loogiline järjestus.

Sõnastiku tähistamiseks kasutatakse loogelisi sulge {}. Näiteks võib programmis teha omistamise:

  1. koordinaadid = {'x': 1, 'y': 2, 'z':3 }

Nüüd on sõnastikus koordinaadid 3 võtme-väärtuse paari: võtmed on stringid x, y ja z ning neile vastavad väärtused 1, 2 ja 3.'

  1. print (koordinaadid['x'])

annab vastuseks 1 ja omistamine

  1. koordinaadid['y']4

muudab väärtuse 2 väärtuseks 4.

Sõnastikus olevad võtmed peavad olema unikaalsed, st kahte paari sama võtmega ei teki. Omistamise puhul kirjutatakse lihtsalt eelmine samale võtmele vastav väärtus üle. Kui aga võtit eelnevalt sõnastikus ei ole, lisatakse ta sinna.

Väärtustena võivad olla kasutusel igasugused Pythonis kasutatavad tüübid, kaasaarvatud listid.

Sõnastiku loomine

Kõigepealt tuleb moodustada tühi sõnastik (kui ei saa kohe väärtuseid sisse panna):

  1. arvud = {}

Järgnevalt võib lisada suvaliste võtmetega väärtuseid:

  1. arvud['zwei'] = 'kaks'
  2. arvud['vier'] = 'neli'

Hilisemal sõnastiku trükkimisel ei teki sama järgnevust kui sõnastiku ehitamisel. See tuleneb tema tehnilisest ülesehitusest.

Sõnastiku kasutamine

Sõnastiku saab läbida for-tsüklit kasutades täitsa tavapärasel viisil:

  1. for arv in arvud:
  2.    print (arv)

in-operaatori abil on võimalik kontrollida võtme kuulumist sõnastikku. Oluline on meeles pidada, et sõnastikust saab otsida ainult võtme järgi.
Kasu võib olla meetoditest keys ja values: meetod dict.keys() tagastab listina kõik sõnastiku võtmed ning dict.values() tagastab listina sõnastiku väärtused. Kindlasti ei saa sõnastikku sorteerida, kuid mõnigase pigutusega saab sõnastikust moodustada sorteeritud list.

 

 
< Järgmine   Eelmine >

Lingid

ooo.jpeg getnotepad.jpg getsketchup.jpg

Viimati lisatud failid

HKHK esitlusmall
2009-09-05
Small Icons - 700tk
2008-06-30
Flag Icons
2008-06-30

Menüü

Foorum
Galerii