Python vārdnīcas

Python vārdnīcas

Python vārdnīca ir datu struktūra, kas saglabā vērtību atslēgas:vērtības pāros.

Piemērs:

Kā redzams piemērā, vārdnīcās dati tiek glabāti atslēgas:vērtības pāros, kas atvieglo vērtību atrašanu. .

Izvade:

{1: 'Geeks', 2: 'For', 3: 'Geeks'} 

Python vārdnīcas sintakse

dict_var = {key1 : value1, key2 : value2, …..}

Kas ir Python vārdnīca?

Python vārdnīcas ir datu struktūra, ko izmanto, lai saglabātu vērtības atslēgas:vērtības formātā. Tas padara to atšķirīgu no sarakstiem, kortežiem un masīviem, jo ​​vārdnīcā katrai atslēgai ir saistīta vērtība.

Piezīme: Sākot ar Python versiju 3.7, vārdnīcas ir sakārtotas un nedrīkst saturēt dublētās atslēgas.

Kā izveidot vārdnīcu

In Python , vārdnīcu var izveidot, ievietojot elementu secību lokā {} lencēm, atdalītas ar 'komatu'.

Vārdnīcā ir vērtību pāri, no kuriem viens ir atslēga, bet otrs atbilstošais pāra elements ir tā Atslēga: vērtība .

Vērtības vārdnīcā var būt jebkura veida datu un tās var dublēt, savukārt atslēgas nevar atkārtot, un tām ir jābūt nemainīgs .

Piezīme - Vārdnīcas atslēgas ir reģistrjutīgas, viens un tas pats nosaukums, bet dažādi atslēgas gadījumi tiks apstrādāti atsevišķi.

Kods parāda vārdnīcu izveidi ar dažāda veida taustiņiem. Pirmajā vārdnīcā tiek izmantoti veselu skaitļu atslēgas, bet otrajā vārdnīcā tiek izmantotas virknes un veselu skaitļu atslēgas ar atbilstošām vērtībām. Tas parāda Python vārdnīcu elastību, apstrādājot dažādus datu tipus kā atslēgas.

Izvade

Dictionary with the use of Integer Keys:  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with the use of Mixed Keys:  {'Name': 'Geeks', 1: [1, 2, 3, 4]} 

Vārdnīcas piemērs

Vārdnīcu var izveidot arī ar iebūvēto funkciju dict(). Tukšu vārdnīcu var izveidot, vienkārši ievietojot krokainas figūriekavas{}.

Dažādi veidi, kā izveidot Python vārdnīcu

Kods parāda dažādus veidus, kā izveidot vārdnīcas Python. Vispirms tiek izveidota tukša vārdnīca un pēc tam parādīts, kā izveidot vārdnīcas, izmantojot dikti () konstruktors ar atslēgu-vērtību pāriem, kas norādīti krokainajās iekavās un kā korešu saraksts.

Izvade:

Empty Dictionary:  {} Dictionary with the use of dict():  {1: 'Geeks', 2: 'For', 3: 'Geeks'} Dictionary with each item as a pair:  {1: 'Geeks', 2: 'For'} 

Vārdnīcas izveides sarežģījumi:

  • Laika sarežģītība: O (len(dikts))
  • Telpas sarežģītība: O(n)

Ligzdotas vārdnīcas

Piemērs : kods definē ligzdotu vārdnīcu ar nosaukumu 'Dikts' ar vairākiem atslēgu un vērtību pāru līmeņiem. Tajā ir iekļauta augstākā līmeņa vārdnīca ar 1., 2. un 3. atslēgām. Vērtība, kas saistīta ar 3. atslēgām, ir vēl viena vārdnīca ar taustiņiem “A”, “B” un “C”. Tas parāda, kā var ligzdot Python vārdnīcas hierarhiskās datu struktūras.

Izvade:

{1: 'Geeks', 2: 'For', 3: {'A': 'Welcome', 'B': 'To', 'C': 'Geeks'}} 

Vairāk par Python ligzdotā vārdnīca

Elementu pievienošana vārdnīcai

Elementu pievienošanu var veikt vairākos veidos. Vārdnīcai var pievienot vienu vērtību, definējot vērtību kopā ar atslēgu, piemēram, Dict[Key] = 'Vērtība'.

Esošas vērtības atjaunināšanu vārdnīcā var veikt, izmantojot iebūvēto Atjaunināt() metodi. Ligzdotas atslēgas vērtības var pievienot arī esošai vārdnīcai.

Piezīme- Pievienojot vērtību, ja atslēgas vērtība jau pastāv, vērtība tiek atjaunināta, pretējā gadījumā vārdnīcai tiek pievienota jauna atslēga ar vērtību.

Piemērs: pievienojiet vienumus Python vārdnīcai ar dažādiem datu tipiem

Kods sākas ar tukšu vārdnīcu un pēc tam pievieno tai atslēgu un vērtību pārus. Tas demonstrē elementu pievienošanu ar dažādiem datu tipiem, atslēgas vērtības atjaunināšanu un pat vārdnīcu ligzdošanu galvenajā vārdnīcā. Kods parāda, kā rīkoties ar vārdnīcām Python.

Izvade:

Empty Dictionary:  {} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1} Dictionary after adding 3 elements:  {0: 'Geeks', 2: 'For', 3: 1, 'Value_set': (2, 3, 4)} Updated key value:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4)} Adding a Nested Key:  {0: 'Geeks', 2: 'Welcome', 3: 1, 'Value_set': (2, 3, 4), 5:  {'Nested': {'1': 'Life', '2': 'Geeks'}}} 

Sarežģījumi vārdnīcas elementu pievienošanai:

  • Laika sarežģītība: O(1)/O(n)
  • Telpas sarežģītība: O(1)

Piekļuve vārdnīcas elementiem

Lai piekļūtu vārdnīcas vienumiem, skatiet tās atslēgas nosaukumu. Atslēgu var izmantot kvadrātiekavās.

Piekļūstiet vērtībai Python vārdnīcā

Kods parāda, kā piekļūt vārdnīcas elementiem, izmantojot taustiņus. Tas piekļūst un izdrukā vērtības, kas saistītas ar taustiņiem “name” un 1, parādot, ka atslēgas var būt dažāda veida datu (virkne un vesels skaitlis).

Izvade:

Accessing a element using key: For Accessing a element using key: Geeks 

Ir arī metode, ko sauc gūt() kas arī palīdzēs piekļūt elementam no vārdnīcas. Šī metode pieņem atslēgu kā argumentu un atgriež vērtību.

Sarežģītības, lai piekļūtu vārdnīcas elementiem:

  • Laika sarežģītība: O(1)
  • Telpas sarežģītība: O(1)

Piemērs: Piekļūstiet vērtībai vārdnīcā, izmantojot get() programmā Python

Kods parāda piekļuvi vārdnīcas elementam, izmantojot gūt() metodi. Tas izgūst un izdrukā vērtību, kas saistīta ar 3. atslēgu vārdnīcā 'Dikts' . Šī metode nodrošina drošu veidu, kā piekļūt vārdnīcas vērtībām, izvairoties no KeyError, ja atslēga neeksistē.

Izvade:

Accessing a element using get: Geeks 

Piekļuve ligzdotas vārdnīcas elementam

Lai piekļūtu jebkuras atslēgas vērtībai ligzdotajā vārdnīcā, izmantojiet indeksēšanas [] sintaksi.

Piemērs : kods darbojas ar ligzdotām vārdnīcām. Vispirms tā piekļūst un izdrukā visu ar atslēgu saistīto ligzdoto vārdnīcu 'Dict1' . Pēc tam tas piekļūst noteiktai vērtībai un izdrukā to, pārvietojoties pa ligzdotajām vārdnīcām. Visbeidzot, tas izgūst un izdrukā ar atslēgu saistīto vērtību ‘Vārds’ ligzdotajā vārdnīcā 'Dict2' .

Izvade:

{1: 'Geeks'} Geeks For 

Elementu dzēšana, izmantojot atslēgvārdu “del”.

Vārdnīcas vienumus var izdzēst, izmantojot tālāk norādīto atslēgvārdu del.

Piemērs : kods definē vārdnīcu, izdrukā tās sākotnējo saturu un pēc tam izmanto 'no' paziņojums, lai dzēstu elementu, kas saistīts ar atslēgu 1. Pēc dzēšanas tas izdrukā atjaunināto vārdnīcu, parādot, ka norādītais elements ir noņemts.

Izvade

  Dictionary ={1: 'Geeks', 'name': 'For', 3: 'Geeks'} Data after deletion Dictionary={'name': 'For', 3: 'Geeks'} 

Vārdnīcas metodes

Šeit ir iebūvēto vārdnīcas funkciju saraksts ar to aprakstu. Šīs funkcijas var izmantot, lai strādātu ar vārdnīcu.

Metode Apraksts
dict.clear() Noņemiet visus elementus no vārdnīcas
dict.copy() Atgriež vārdnīcas kopiju
dict.get(atslēga, noklusējuma = nav) Atgriež norādītās atslēgas vērtību
dict.items() Atgriež sarakstu, kurā ir koretūra katram atslēgu vērtību pārim
dict.keys() Atgriež sarakstu ar vārdnīcas taustiņiem
dict.update(dict2) Atjaunina vārdnīcu ar noteiktiem atslēgu un vērtību pāriem
dict.values() Atgriež visu vārdnīcas vērtību sarakstu
pop () Noņemiet elementu ar norādīto atslēgu
popItem() Noņem pēdējo ievietoto atslēgas vērtību pāri
dict.setdefault(key,default= Nav) iestatiet atslēgas noklusējuma vērtību, ja atslēga nav norādīta vārdnīcā
dict.has_key(key) atgriež true, ja vārdnīcā ir norādītā atslēga.

Detalizētiem skaidrojumiem: Python vārdnīcu metodes

Vairākas vārdnīcas darbības Python

Kods sākas ar vārdnīcu 'dict1' un izveido kopiju 'dict2' . Pēc tam tiek parādītas vairākas vārdnīcas darbības: klīringa 'dict1' , piekļūt vērtībām, izgūt atslēgu-vērtību pārus un atslēgas, noņemt noteiktus atslēgu-vērtību pārus, atjaunināt vērtību un izgūt vērtības. Šīs darbības parāda, kā strādāt ar vārdnīcām programmā Python.

Izvade:

{1: 'Python', 2: 'Java', 3: 'Ruby', 4: 'Scala'} {} Python dict_items([(1, 'Python'), (2, 'Java'), (3, 'Ruby'), (4, 'Scala')]) dict_keys([1, 2, 3, 4]) {1: 'Python', 2: 'Java', 3: 'Ruby'} {1: 'Python', 2: 'Java'} {1: 'Python', 2: 'Java', 3: 'Scala'} dict_values(['Python', 'Java', 'Scala']) 

Mēs esam apskatījuši visu par Python vārdnīcām, apsprieduši tās definīciju un lietojumus, kā arī redzējuši dažādas vārdnīcu metodes ar piemēriem. Vārdnīca ir svarīga datu struktūra datu glabāšanai Python. Tas ļoti atšķiras no kortežiem un sarakstiem.

Lasīt vairāk Datu struktūras programmā Python

Lasi arī:

  • Kā izveidot vārdnīcu Python
  • Atšķirība starp sarakstu un vārdnīcu Python
  • Python | Divu vārdnīcu apvienošana