Uzziniet Python vārdnīcas datu struktūru - 3. daļa


Šajā Python datu struktūras sērijas 3. daļā mēs apspriedīsim, kas ir vārdnīca, kā tā atšķiras no citas pitona datu struktūras, kā izveidot, dzēst vārdnīcas objektus un vārdnīcas objektu metodes.

  • Vārdnīca ir iebūvēta “Python Data Structure” ieviešana, kas ir “Key: Value” pāru kolekcija.
  • Vārdnīca tiek veidota, izmantojot cirtainās iekavas ar atslēgu un vērtību, atdalot ar semikolu {Key: Value}.
  • Līdzīgi sarakstam vārdnīcu objekti ir maināmi datu tipi, kas nozīmē, ka objektus var pārveidot pēc vārdnīcas izveides.
  • Vārdnīcas ieviešanas konstrukciju pitonā parasti sauc par “Asociatīvo masīvu”.
  • Sarakstā vai kopās mēs varam piekļūt vienumiem, atsaucoties uz to indeksa pozīcijām, jo vienumi saraksta iekšienē ir sakārtoti (t.i., glabāti to izveidošanas secībā). Vārdnīcas objekti var būt jebkurā secībā, jo vienumiem var piekļūt, izmantojot ar tiem saistīto “atslēgu”.
  • Vārdnīcas ir ļoti noderīgas, ja mums objekti ir jāsaglabā un jānorāda pēc nosaukuma.
  • Vārdnīcas “atslēgas” objektam jābūt unikālam un nemainīgam tipam.
  • Vārdnīcas “Key” objekts var būt virkne, veselais skaitlis, peldošās vērtības.
  • Vārdnīca “Vērtības” var būt jebkura veida.

Konstruēt vārdnīcas objektu

Vārdnīcas objektu var izveidot, izmantojot cirtainās iekavas ar semikolu atdalošo atslēgu un vērtību pāri “{Key: value}” vai “dict()” konstruktora metodi.

Lai demonstrētu, es izveidošu vārdnīcu, kurā tiks glabāti dati par futbola komandu un viņu spēli XI ar pozīciju kā galveno un spēlētāju vārdus kā vērtības.

Veidnīcas objekta izveidošanai varat izmantot konstruktora metodi dict().

Piekļuve Dictonary Object

Vārdnīcas vienumiem var piekļūt ar “atslēgu” atsaucēm, nevis indeksēšanu. Indeksēšanu ir iespējams izmantot, ja mums vārdnīcā ir kāds secības datu tips (virkne, saraksts, kopas utt.)

Vienumiem var piekļūt, izmantojot dic_object [“key”].

“KeyError” tiks parādīts, ja mēģināsiet piekļūt vārdnīcas vienumiem ar indeksēšanu vai mēģināsiet piekļūt “atslēgai”, kas nav vārdnīcas sastāvdaļa.

Modificēt un dzēst vārdnīcas objektu

Varat modificēt esošo vienumu vai pievienot jaunu vienumu, tieši atsaucoties uz tā atslēgu Dictionary_object [“key”] = vērtība. Tas atjauninās vērtību, ja ir pieejama atslēga, citādi pievienojot jaunu vienumu vārdnīcai.

Jūs varat izdzēst noteiktu vērtību, pamatojoties uz tās atslēgu, vai izdzēst atslēgu vai izdzēst vārdnīcas objektu no nosaukumvietas, izmantojot iebūvēto “del” atslēgvārdu.

Varat izmantot iebūvēto funkciju “dir()”, lai meklētu vārdnīcas objektam pieejamās metodes un atribūtus.

notīrīt() - šī metode noņems visus vienumus no vārdnīcas objekta. Šai metodei nav argumentu.

Kopija() - tā atgriezīs vārdnīcas objekta seklu kopiju. Metode copy() neuzskata par parametru kā argumentu.

Taustiņi() - šī metode atgriež skata objektu atslēgām, kas vārdnīcā ir pieejamas kā vārdnīcas atslēgas objekts. Šai metodei nav argumentu.

Vērtības() - šī metode atgriež skata objektu vērtībām no vārdnīcas objekta. Šai metodei nav argumentu.

Vienumi() - šī metode atgriež dubultu (atslēgu, vērtību) pāri no vārdnīcas objekta.

Setdefault() - šī metode meklē noteiktu vārdnīcu vārdnīcā. Ja atslēga vārdnīcā nav atrodama, tā tiks pievienota vārdnīcai.
Tas prasa 2 argumentus dic.setdefault (atslēga, [, noklusējuma vērtība]).

Noklusējuma vērtība ir None, ja nav norādīta vērtība.

get() - Šī metode atgriež norādītās atslēgas vērtību, ja atslēga ir pieejama vārdnīcā.

Syntax dict.get(key[, value]) 

Šī metode prasa 2 argumentus. Pirmais ir ievades arguments, kas meklēs doto atslēgu vārdnīcā un atgriezīs atrastās atslēgas vērtību. Otrais arguments atgriezīs vērtību, ja atslēga netiks atrasta. Noklusējuma atgriešanās vērtība ir iestatīta uz “None”.

Atjaunināt() - atjaunināšanas metode pievieno vienumus vārdnīcai, ja atslēgas nav vārdnīcā. Ja tiek atrasta atslēga, tā tiek atjaunināta ar jauno vērtību. Atjaunināšanas metode pieņem vai nu citu k: v pāra vārdnīcas objektu, vai k: v pāra iterējamu objektu, piemēram, pogu pāri.

Vārdnīcas objekta noņemšana/dzēšana

Pop() - šī metode noņem vērtību, kuras pamatā ir atslēga kā ievade, un atgriež noņemto vērtību.

Šī metode pieņem divus parametrus.

  1. Atslēga - atslēga, kas jāmeklē vārdnīcas objektā.
  2. Noklusējums - atgriežamā vērtība jānorāda, ja atslēga nav atrasta vārdnīcā.

PIEZĪME Ja atslēga vārdnīcā nav atrasta un ja neizdodas norādīt noklusējuma vērtību, tiks parādīts “KeyError”.

Popitem() - noņem no vārdnīcas objekta patvaļīgus elementus. Neviens arguments netiek pieņemts, un tas atgriež “KeyError”, ja vārdnīca ir tukša.

Tāpat kā saraksts un korekcijas, mēs varam izmantot del atslēgvārdu, lai noņemtu vienumus vārdnīcas objektā vai noņemtu vārdnīcas objektu no nosaukumvietas.

Šajā rakstā jūs redzējāt, kas ir vārdnīca un ar ko tā atšķiras no citām pitona datu struktūrām. Jūs esat arī redzējis, kā izveidot, piekļūt, modificēt un izdzēst vārdnīcas objektus.

Vārdnīcas optimālais izmantošanas gadījums ir gadījums, kad mums dati jāsaglabā, pamatojoties uz vārdu, un jānorāda tie pēc nosaukuma. Nākamajā rakstā mēs redzēsim cita veida python iebūvēto datu struktūru “set/Frozenset”. Līdz tam šeit varat lasīt vairāk par vārdnīcām.