Python OrderedDict

Python OrderedDict

Datastrukturer er de essensielle komponentene i ethvert programmeringsspråk som lagrer og administrerer dataene effektivt. Python gir mange innebygde datastrukturer, jeg.e., Lister, tuples og ordbøker som hjelper programmererne til å lage effektive applikasjoner. Python-ordbøkene lagrer dataene i nøkkelverdipar. Bestillingsdikten er underklassen i DICT -klassen og opprettholder rekkefølgen på nøklene som ble satt inn i. Dette er den eneste forskjellen mellom dikter og orden. Dict opprettholder ikke nøkkelenes ordre.

Bestillingen holder rekkefølgen på innsetting. På den annen side, når iterasjonen utføres på DICT, returneres nøklene i tilfeldig rekkefølge. Imidlertid er ordbøkene nå bestilt i Python 3.6 og over versjoner og returner verdiene i samme rekkefølge som de er satt inn. OrdreDict -klassen eksisterer i samlingsmodulen. For å bruke ordrenes ordre, importerer du først samlingsmodulen. Denne artikkelen forklarer Python Ordereddict i detalj med eksempler.

Eksempler

La oss opprette en ordre i Python -skriptet vårt og legge til dataene i form av nøkler og verdier. Elementene () er den innebygde Python-funksjonen som returnerer informasjon om nøkler og verdier.

#importing av samlingsmodulen
Importsamlinger
#Creating a OrderedDict
my_dict = samlinger.OrderedDict ()
my_dict ["a"] = 1
my_dict ["b"] = 2
my_dict ["c"] = 3
my_dict ["d"] = 4
#Declaring A for Loop å iterere gjennom OrderDict
for jeg i my_dict.elementer ():
trykk (i)

Produksjon

I utgangen kan det observeres at bestillingen returnerer nøklene og verdiene i det samme som satt inn.

La oss nå lage en annen ordre av en student og lagre studentinformasjonen i den.

#importing av samlingsmodulen
Importsamlinger
#Creating a OrderedDict of Student
STD_DICT = Collections.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['e -post'] = '[email protected] '
std_dict ['class'] = 'bs'
#Declaring A for Loop å iterere gjennom OrderDict
for jeg i std_dict.elementer ():
trykk (i)

Produksjon

Endring av verdiene på nøkler

Vi kan endre verdien av den spesifikke nøkkelen til orden. Hvis vi endrer verdien av en bestemt nøkkel, vil rekkefølgen på nøklene forbli den samme i ordren. La oss endre aldersverdien i studentordningen.

#importing av samlingsmodulen
Importsamlinger
#Creating a OrderedDict of Student
STD_DICT = Collections.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['e -post'] = '[email protected] '
std_dict ['class'] = 'bs'
skriv ut ("rekkefølgen på tastene før du endrer aldersverdien:")
#Declaring A for Loop å iterere gjennom OrderDict
for jeg i std_dict.elementer ():
trykk (i)
#Changing aldersverdien
std_dict ['alder'] = 25
skriv ut ("rekkefølgen på nøklene etter å ha endret aldersverdien:")
for jeg i std_dict.elementer ():
trykk (i)

Produksjon

Utgangen viser at rekkefølgen på tastene forblir den samme når vi endrer verdien av en bestemt nøkkel.

Slette verdien fra ordreedikten

Å slette verdiene fra OrderDict endrer ikke rekkefølgen på tastene. Hvis vi sletter en bestemt nøkkel og omsetter den på nytt, vil den bli lagt til på slutten. La oss se et eksempel på det. Vi vil slette "alder" -nøkkelen fra studentordboken og deretter sette inn den på nytt.

#importing av samlingsmodulen
Importsamlinger
#Creating a OrderedDict of Student
STD_DICT = Collections.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['e -post'] = '[email protected] '
std_dict ['class'] = 'bs'
skriv ut ("rekkefølgen på tastene før du endrer aldersverdien:")
#Declaring A for Loop å iterere gjennom OrderDict
for jeg i std_dict.elementer ():
trykk (i)
#Delettering av aldersnøkkelen
del std_dict ['alder']
Skriv ut ("Orderen på tastene etter å ha slettet alderstasten:")
for jeg i std_dict.elementer ():
trykk (i)
#Innsatt aldersnøkkel og verdi på nytt
std_dict ['alder'] = 23
Skriv ut ("Orderen på tastene etter å ha satt inn aldersnøkkelen:")
for jeg i std_dict.elementer ():
trykk (i)

Produksjon

I utgangen kan det sees at når vi setter inn en nøkkel på nytt, blir den satt inn på slutten.

Konklusjon

Bestillingen er underklassen til DICT som ordner nøkkelen i sekvens og bevarer ordren når de er satt inn. Ordereddict -klassen er en del av samlingsmodulen. Denne artikkelen forklarer ordre, og den er funksjonalitet med eksempler.