Naučite se podatkovne strukture slovarja Python - 3. del


V tem 3. delu serije Python Data Structure bomo razpravljali o tem, kaj je slovar, kako se razlikuje od druge podatkovne strukture v pythonu, kako ustvariti, izbrisati slovarske predmete in metode slovarskih predmetov.

  • Slovar je vgrajena izvedba\"Python Data Structure", ki je zbirka parov\"Ključ: Vrednost".
  • Slovar je ustvarjen z uporabo zavitih oklepajev s ključem in vrednostjo, ločenimi s podpičjem {Key: Value}.
  • Podobno kot na seznamu so tudi slovarji predmeti spremenljivi podatkovni tip, kar pomeni, da je mogoče predmete spremeniti, ko je slovar ustvarjen.
  • Konstrukcija izvedbe slovarja v pythonu je bolj splošno znana kot\"Associative array".
  • Na seznamu ali naboru lahko do elementov dostopamo tako, da se sklicujemo na njihove indeksne položaje, ker so elementi znotraj seznama razvrščeni (tj. Shranjeni v vrstnem redu, ki so ga ustvarili). Slovarski predmeti so lahko v poljubnem vrstnem redu, saj je do njih mogoče dostopati s pripadajočim\"ključem".
  • Slovarji so zelo koristni, kadar moramo predmete shraniti in jih napotiti po imenu.
  • Objekt\"ključ" mora biti enoličen in nespremenljiv tip.
  • Predmet\"Ključ" slovarja je lahko bodisi niz, celo število, plavajoče vrednosti.
  • Slovar\"Vrednosti" je lahko katere koli vrste podatkov.

Izdelaj predmet slovarja

Objekt slovarja je mogoče ustvariti z uporabo kodrastih oklepajev s podpičjem, ki ločuje ključ in vrednostni par\"{Ključ: vrednost}" ali\"dict()«.

Za demonstracijo bom ustvaril slovar, ki bo hranil podatke o nogometni ekipi in igranju XI s položajem ključa in imeni igralcev kot vrednostmi.

Za izdelavo slovarskega predmeta lahko uporabite konstruktorsko metodo dict().

Dostop do predmeta diktonarja

Do elementov slovarja namesto indeksiranja dostopajo reference\"key". Indeksiranje je mogoče uporabiti, če imamo v slovarju kakršen koli tip podatkov o zaporedju (niz, seznam, nabori itd.)

Do elementov je mogoče dostopati s pomočjo dic_object [\ "key"].

\ "KeyError" se prikaže, če poskušate dostopati do elementov slovarja z indeksiranjem ali če poskušate dostopati do\"ključa", ki ni del slovarja.

Spreminjanje in brisanje predmeta slovarja

Obstoječi element lahko spremenite ali dodate novega, tako da se neposredno sklicujete na njegov ključ.

Lahko izbrišete določeno vrednost na podlagi njenega ključa ali izbrišete ključ ali izbrišete slovarski objekt iz imenskega prostora z uporabo vgrajene ključne besede\"del".

Za iskanje razpoložljivih metod in atributov za slovarski objekt lahko uporabite vgrajeno funkcijo\"dir()".

clear() - Ta metoda bo odstranila vse predmete iz predmeta slovarja. Ta metoda ne sprejema nobenega argumenta.

Kopija() - vrnila bo plitvo kopijo slovarskega predmeta. Metoda copy() kot argument ne jemlje nobenih parametrov.

Tipke() - Ta metoda vrne predmet pogleda za ključe, ki so na voljo v slovarju, kot predmet ključa slovarja. Ta metoda ne sprejema nobenega argumenta.

Vrednosti() - Ta metoda vrne predmet pogleda za vrednosti iz slovarskega predmeta. Ta metoda ne zahteva nobenega argumenta.

Elementi() - Ta metoda vrne par slogov (ključ, vrednost) iz slovarskega predmeta.

Setdefault() - Ta metoda išče določen ključ v slovarju. Če ključa ne najdete v slovarju, bo dodan v slovar.
Potrebna sta dva argumenta dic.setdefault (ključ, [, privzeta vrednost]).

Privzeta vrednost je nastavljena na Brez, če ni podana nobena vrednost.

get() - Ta metoda vrne vrednost določenega ključa, če je ključ na voljo v slovarju.

Syntax dict.get(key[, value]) 

Ta metoda ima dva argumenta. Najprej je vhodni argument, ki bo iskal dani ključ v slovarju in vrnil vrednost ključa. Drugi argument bo vrnil vrednost, če ključa ne najdemo. Privzeta vrnjena vrednost je nastavljena na\"Brez".

Posodobi() - način posodabljanja doda elemente v slovar, če ključa ni v slovarju. Če ključ najdete, se ključ posodobi z novo vrednostjo. Metoda posodobitve sprejme bodisi drug slovarski objekt v paru k: v bodisi iterabilni objekt v paru k: v kot par tuplev.

Odstranjevanje/brisanje predmeta slovarja

Pop() - Ta metoda odstrani vrednost, ki temelji na ključu kot vhodu, in vrne odstranjeno vrednost.

Ta metoda sprejema dva parametra.

  1. Tipka - tipka, ki jo želite iskati v slovarju.
  2. Privzeto - vrnitev vrednosti, ki jo je treba določiti, če ključa v slovarju ni mogoče najti.

OPOMBA: Če v slovarju ni ključa in če ne določite privzete vrednosti, se prikaže\"KeyError".

Popitem() - Odstrani poljubne elemente iz predmeta slovarja. Argument ni sprejet in vrne\"KeyError", če je rečnik prazen.

Tako kot seznam in nabori lahko tudi s ključno besedo del odstranimo elemente v slovarskem predmetu ali odstranimo slovarski predmet iz imenskega prostora.

V tem članku ste videli, kaj je slovar in kako se razlikuje od drugih podatkovnih struktur v pythonu. Videli ste tudi, kako ustvariti, dostopati do, spreminjati in brisati slovarske predmete.

Optimalni primer uporabe slovarja je, ko moramo podatke shraniti na podlagi imena in jih napotiti po imenu. V naslednjem članku bomo videli še eno vrsto vgrajene podatkovne strukture python\"set/Frozenset". Do takrat lahko preberete več o slovarjih tukaj.