Elementide lisamine¶
Sõnastikku saab ka elemente juurde lisada võtme omistamise meetodil dictionary[key] = value
:
some_dict = {'Mati': 'Audi', 'Kati': 'Toyota', 'Andres': 'BMW' }
some_dict['Kadi'] = 'Opel'
print(some_dict)
Väljund:
{'Mati': 'Audi', 'Kati': 'Toyota', 'Andres': 'BMW', 'Kadi': 'Opel'}
Kui omistada uus väärtus võtmele, mis juba sõnastikus eksisteerib, siis uue võtme-väärtuse paari lisamise asemel omistatakse sellele võtmele uus väärtus (sõnastikus on iga võti unikaalne; nagu mäletame, saab järjendi puhul lisada korduvaid elemente):
some_dict = {'Mati': 'Audi', 'Kati': 'Toyota', 'Andres': 'BMW' }
some_dict['Kati'] = 'Opel'
print(some_dict)
some_list = ['Mati', 'Kati', 'Andres']
some_list.append('Andres')
print(some_list)
Väljundis näeme, et sõnastiku puhul (esimene rida) asendus võtme ‚Kati‘ väärtus uue automargiga. Järjendisse aga (teine rida) tekkis uus element olenemata sellest, et taoline juba eksisteeris:
{'Mati': 'Audi', 'Kati': 'Opel', 'Andres': 'BMW'}
['Mati', 'Kati', 'Andres', 'Andres']
Sõnastikku on võimalik ka uuendada elementidega, mis pärinevad mõnest teisest sõnastikust, kasutades selleks meetodit dictionary.update([other_key])
. Ehk on võimalik lisada ühest sõnastikust kõik võtmete-väärtuste paarid teise sõnastikku. Kui ühesugune võti on mõlemas sõnastikus, siis saab võtme väärtuseks see, mis on sõnastikus, mille elemente lisatakse teise sõnastikku (vaata näidet).
Näide:
cars = {'Pille': 'Audi', 'Kati': 'Toyota'}
other_cars = {'Mati': 'Audi', 'Andres': 'BMW'}
cars.update(other_cars)
print(cars)
new_dict = {'Andres': 'Audi'}
cars.update(new_dict) # Võtme 'Andres' väärtus on nüüd 'Audi'
print(cars)
Väljund:
{'Pille': 'Audi', 'Kati': 'Toyota', 'Mati': 'Audi', 'Andres': 'BMW'}
{'Pille': 'Audi', 'Kati': 'Toyota', 'Mati': 'Audi', 'Andres': 'Audi'}
update()
meetodile on võimalik argumendiks kaasa anda ka järjend ennikutest, kus igas ennikus on kaks elementi. Esimene element on võti ja teine element väärtus, mis uuendatavasse sõnastikku lisatud saavad.
cars = {'Pille': 'Audi', 'Kati': 'Toyota'}
cars.update([('Mati', 'BMW'), ('Andres', 'Opel')])
print(cars)
Väljund:
{'Pille': 'Audi', 'Kati': 'Toyota', 'Mati': 'BMW', 'Andres': 'Opel'}