Õpi Pythoni sõnaraamatu andmete struktuuri - 3. osa
Selles Pythoni andmestruktuuri seeria 3. osas arutleme, mis on sõnastik, kuidas see erineb teistest Pythoni andmestruktuuridest, kuidas sõnastikuobjekte luua, kustutada ja sõnastikuobjektide meetodeid.
- Sõnastik on "Pythoni andmestruktuuri" sisseehitatud rakendus, mis on paaride "Key: Value" kogum.
- Sõnaraamat luuakse lokkis sulgude abil, mille klahv ja väärtus on eraldatud semikooloniga {Key: Value}.
- Sarnaselt loendiga on sõnastikuobjektid muudetavad andmetüübid, mis tähendab, et objekte saab pärast sõnastiku loomist muuta.
- Pythoni sõnastiku juurutamise konstruktsiooni tuntakse üldisemalt kui "assotsiatiivset massiivi".
- Loendis või komplektidena pääseme üksustele juurde, viidates nende indeksi positsioonidele, kuna loendis olevad üksused on järjestatud (s.o. salvestatud nende loodud järjestuses). Sõnaraamatu objektid võivad olla suvalises järjekorras, kuna üksustele pääseb juurde sellega seotud „võtme” abil.
- Sõnaraamatutest on palju kasu, kui peame objektid talletama ja neile nimeliselt viitama.
- Sõnaraamatu "võti" objekt peab olema kordumatu ja muutumatu tüüp.
- Sõnaraamatu "Key" objekt võib olla kas string, täisarv, ujuvad väärtused.
- Sõnastik „Väärtused” võib olla mis tahes tüüpi.
Ehitage sõnaraamatu objekt
Sõnaraamatu objekti saab luua lokkisulgudega, kus semikooloniga eraldatakse klahv ja väärtuspaari konstruktori meetod {{Key: value} "või" dict() ".
Näitamiseks kavatsen luua sõnastiku, kuhu salvestatakse andmed jalgpallimeeskonna ja nende XI kohta mängimise kohta võtmepositsioonina ja mängijate nimed väärtusena.
Sõnastikuobjekti koostamiseks võite kasutada konstruktori meetodit dict().
Juurdepääs sõnaraamatule
Sõnaraamatu üksuste juurde pääseb indekseerimise asemel viitenumbrite abil. Indekseerimist on võimalik kasutada, kui meil on sõnastikus mis tahes jada andmetüüp (string, loend, korrektsioonid jne.).
Üksuste juurde pääseb dic_object [“key”] abil.
„KeyError” tõstetakse üles, kui proovite pääseda juurde sõnastiku üksustele indekseerimisega või kui proovite juurde pääseda „võtmele”, mis ei kuulu sõnastikku.
Sõnaraamatu objekti muutmine ja kustutamine
Olemasolevat üksust saate muuta või uue üksuse lisada, viidates otse selle võtmele Dictionary_object [“key”] = väärtus. See värskendab väärtust, kui võti on saadaval, muul juhul lisage sõnastikku uus üksus.
Sisseehitatud märksõna „del” abil saate kustutada konkreetse väärtuse selle võtme põhjal või kustutada võtme või kustutada sõnaraamatu objekti nimeruumist.
Sisseehitatud funktsiooni "dir()" abil saate otsida sõnastikuobjekti saadaolevaid meetodeid ja atribuute.
clear() - see meetod eemaldab kõik üksused sõnastikuobjektist. See meetod ei toeta ühtegi argumenti.
Kopeeri() - see tagastab sõnaraamatu objekti madala koopia. Meetod copy() ei võta argumentidena ühtegi parameetrit.
Klahvid() - see meetod tagastab sõnastikus saadaolevate võtmete vaateobjekti sõnastiku võtmeobjektina. See meetod ei toeta ühtegi argumenti.
Väärtused() - see meetod tagastab vaateobjekti sõnastikuobjekti väärtuste jaoks. See meetod ei vaja argumente.
Elemendid() - see meetod tagastab sõnastikobjektist paarise (võti, väärtus) paari.
Setdefault() - see meetod otsib sõnastikus antud võtit. Kui võtit sõnastikust ei leia, lisatakse see sõnastikku.
Selleks on vaja 2 argumenti dic.setdefault (võti, [, vaikeväärtus]).
Vaikeväärtuseks määratakse Puudub, kui väärtust pole määratud.
get() - see meetod tagastab määratud võtme väärtuse, kui võti on sõnastikus saadaval.
Syntax dict.get(key[, value])
See meetod nõuab 2 argumenti. Esiteks on sisendargument, mis otsib sõnastikust antud võtit ja tagastab leitud võtme väärtuse. Teine argument tagastab väärtuse, kui võtit ei leita. Vaikimisi tagastatav väärtus on „Puudub”.
Update() - värskendusmeetod lisab sõnastikku üksusi, kui võtit pole sõnastikus. Kui võti on leitud, värskendatakse võtit uue väärtusega. Uuendusmeetod aktsepteerib kas k: v paari teist sõnastikuobjekti või paari k: v iteratiivset objekti nagu paaripaari.
Sõnaraamatu objekti eemaldamine/kustutamine
Pop() - see meetod eemaldab võtme põhjal sisendina väärtuse ja tagastab eemaldatud väärtuse.
See meetod aktsepteerib kahte parameetrit.
- Võti - võti, mida sõnastikuobjektist otsida.
- Vaikimisi - tagastatav väärtus määratakse, kui võtit sõnastikust ei leia.
MÄRKUS. Kui võtit sõnastikust ei leia ja kui te ei määra vaikeväärtust, tõstetakse „KeyError”.
Popitem() - eemaldab suvalise elemendi sõnaraamatu objektist. Ühtegi argumenti ei aktsepteerita ja see tagastab "KeyError", kui sõnastik on tühi.
Sarnaselt loendile ja korrektsioonidele võime ka märksõna del abil eemaldada üksused sõnastikuobjektist või sõnaraamatuobjekti nimeruumist.
Selles artiklis olete näinud, mis on sõnastik ja kuidas see erineb teistest Pythoni andmestruktuuridest. Samuti olete näinud, kuidas sõnastikuobjekte luua, neile juurde pääseda, neid muuta ja kustutada.
Sõnaraamatu optimaalne kasutusjuhtum on see, kui peame andmed salvestama nime alusel ja viima need nime järgi. Järgmises artiklis näeme teist tüüpi pythoni sisseehitatud andmestruktuuri "set/Frozenset". Siiani saate sõnaraamatute kohta lugeda siit.