Ero sivun ”Python 2/Sanakirja” versioiden välillä
Poistettu sisältö Lisätty sisältö
Ei muokkausyhteenvetoa |
Korvattu vanhentunut source-tagi syntaxhighlight-tagilla |
||
Rivi 4:
==Operaatiot==
<
len(a)
a[k]
Rivi 26:
a.iterkeys()
a.itervalues()
</syntaxhighlight>
==Yleistä==
;Määritellään tyhjä dictionary:
<
>>> d = {}
</syntaxhighlight>
;Tulostetaan se:
<
>>> d
{}
>>>
</syntaxhighlight>
;Määritellään avain–arvo-pareja sisätävä dictionary:
<
>>> d = {'Seppo': 'Virtanen', 'Maija': 'Saarinen', 'Martti': 'Lampi'}
</syntaxhighlight>
;Tulostetaan se:
<
>>> d
{'Maija': 'Saarinen', 'Seppo': 'Virtanen', 'Martti': 'Lampi'}
>>>
</syntaxhighlight>
Huomataan, että dictionary järjestää itsensä. Järjestys määräytyy avainten mukaan. Jos järjestys halutaan säilyttää, täytyy käyttää [[Python/monikko|monikkoa]] tai [[Python/lista|listaa]] dictionaryn sijasta.
Rivi 59:
;Tulostetaan vain yksi arvo avaimen avulla:
<
>>> d['Maija']
'Saarinen'
</syntaxhighlight>
==Hakeminen==
Rivi 68:
;Haetaan avaimet:
<
>>> d.keys()
['Maija', 'Seppo', 'Martti']
</syntaxhighlight>
;Haetaan arvot:
<
>>> d.values()
['Saarinen', 'Virtanen', 'Lampi']
</syntaxhighlight>
;Dictionarysta voidaan hakea arvo avaimen avulla d[avain]:
<
>>> d['Seppo']
'Virtanen'
</syntaxhighlight>
;Avain–arvo-parit voidaan hakea items()-metodilla:
<
>>> d.items()
[('Maija', 'Saarinen'), ('Seppo', 'Virtanen'), ('Martti', 'Lampi')]
</syntaxhighlight>
==Lisääminen==
Rivi 97:
;d[avain] = arvo:
<
>>> d['Pekka'] = 'Ilmarinen'
>>> d
{'Pekka': 'Ilmarinen', 'Maija': 'Saarinen', 'Seppo': 'Virtanen', 'Martti': 'Lampi'}
</syntaxhighlight>
==Poistaminen==
Rivi 107:
;Poistaminen tapahtuu avaimen avulla del d[avain]:
<
>> del d['Maija']
>> d
{'Seppo': 'Virtanen', 'Martti': 'Lampi'}
</syntaxhighlight>
;Clear poistaa kaiken dictionarystä (tyhjentää):
<
>>> d.clear()
</syntaxhighlight>
==Kopiominen==
Rivi 123:
;Dictionaryn voi kopioida copy()-metodilla:
<
>> a = d.copy()
>> a
>> {'Maija': 'Saarinen', 'Seppo': 'Virtanen', 'Martti': 'Lampi'}
</syntaxhighlight>
==Tarkistaminen==
Rivi 133:
;Tarkistaminen onnistuu has_key-metodilla:
<
>>> d.has_key('Martti')
True
>>> d['Martti']
'Lampi'
</syntaxhighlight>
;Toinen mahdollisuus on "avain in d":
<
>>> 'Martti' in d
True
>>> d['Martti']
'Lampi'
</syntaxhighlight>
==Yhdistäminen==
Rivi 152:
;Kahden dictionaryn yhdistäminen:
<
>>> d = {'apples': 1, 'oranges': 3, 'pears': 2}
>>> d2 = {'pears': 4, 'grapes': 5, 'lemons': 6}
Rivi 158:
>>> d
{'grapes': 5, 'pears': 4, 'lemons': 6, 'apples': 1, 'oranges': 3}
</syntaxhighlight>
==Iteroiminen==
Rivi 164:
;Avainten iteroiminen:
<
nimet = {'Seppo': 'Virtanen', 'Maija': 'Saarinen', 'Martti': 'Lampi'}
for etunimi in nimet:
print etunimi
</syntaxhighlight>
;Arvojen iteroiminen:
<
nimet = {'Seppo': 'Virtanen', 'Maija': 'Saarinen', 'Martti': 'Lampi'}
for sukunimi in nimet.itervalues():
print sukunimi
</syntaxhighlight>
;Avain–arvo-parien iteroiminen onnistuu iteritems()-metodilla:
<
nimet = {'Seppo': 'Virtanen', 'Maija': 'Saarinen', 'Martti': 'Lampi'}
for etunimi, sukunimi in nimet.iteritems():
print etunimi, sukunimi
</syntaxhighlight>
;Tulostaa:
<
Maija Saarinen
Seppo Virtanen
Martti Lampi
</syntaxhighlight>
==Dict-konstruktori==
Rivi 197:
;Dict-konstruktorilla voidaan määritellä dictionary listan sisällä olevista avain-arvo-muotoisesta monikosta:
<
>>> d = dict([('Seppo', 'Virtanen'), ('Maija', 'Saarinen'), ('Martti', 'Lampi')])
>>> d
{'Maija': 'Saarinen', 'Seppo': 'Virtanen', 'Martti': 'Lampi'}
</syntaxhighlight>
;Toinen mahdollisuus antaa muuttujia avainsana-argumentteina:
<
>>> seppo = "Seppo"
>>> virtanen = "Virtanen"
Rivi 215:
>>> d
{'Maija': 'Saarinen', 'Seppo': 'Virtanen', 'Martti': 'Lampi'}
</syntaxhighlight>
==Poikkeukset==
Rivi 225:
* Tee ohjelma, joka määrittelee tyhjän dictionaryn, lisää siihen avain–arvo-parin, tarkistaa löytyykö dictionarysta avainta ja tulostaa avaimen arvon (jos se löytyy).
<
d = {}
d['avain'] = ['arvo']
if d.has_key('avain'):
print d['avain']
</syntaxhighlight>
===Aiheesta muualla===
|