Python

Python OrderedDict

Python OrderedDict

Datastrukturer er de viktigste komponentene i ethvert programmeringsspråk som lagrer og administrerer dataene effektivt. Python har mange innebygde datastrukturer, dvs.e., lister, tupler og ordbøker, som hjelper programmererne med å lage effektive applikasjoner. Python-ordbøkene lagrer dataene i nøkkelverdipar. OrderedDict er underklassen til dict-klassen og opprettholder rekkefølgen på nøklene som ble satt inn i. Dette er den eneste forskjellen mellom dikt og OrderDict. Diktaten opprettholder ikke nøkkelens rekkefølge.

OrderedDict beholder rekkefølgen på nøkkelinnsetting, og når vi går gjennom OrderedDict, returnerer den nøklene i samme rekkefølge. På den annen side, når iterasjonen utføres på dict, returneres tastene i tilfeldig rekkefølge. Ordbøkene er imidlertid nå bestilt i Python 3.6 og over versjoner og returnerer verdiene i samme rekkefølge som de er satt inn. OrderedDict-klassen finnes i samlingsmodulen. Hvis du vil bruke klassen OrderedDict, må du først importere samlingsmodulen. Denne artikkelen forklarer Python OrderedDict i detalj med eksempler.

Eksempler

La oss lage en OrderedDict i Python-skriptet og legge til dataene i form av nøkler og verdier. Elementene () er den innebygde Python-funksjonen som returnerer nøklene og verdsetter informasjonen.

#importing av samlingsmodulen
importer samlinger
#creating an 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 to iterate through the OrderDict
for jeg i min_dikt.gjenstander ():
skrive ut (i)

Produksjon

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

La oss nå opprette en OrderDict av en student og lagre studentinformasjonen i den.

#importing av samlingsmodulen
importer samlinger
#creating an OrderedDict of student
std_dict = samlinger.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['email'] = '[e-postbeskyttet]'
std_dict ['class'] = 'BS'
#declaring a for loop to iterate through the OrderDict
for jeg i std_dict.gjenstander ():
skrive ut (i)

Produksjon

Endring av verdiene til tastene

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

#importing av samlingsmodulen
importer samlinger
#creating an OrderedDict of student
std_dict = samlinger.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['email'] = '[e-postbeskyttet]'
std_dict ['class'] = 'BS'
print ("Rekkefølgen på tastene før du endrer aldersverdien:")
#declaring a for loop to iterate through the OrderDict
for jeg i std_dict.gjenstander ():
skrive ut (i)
#endring av aldersverdien
std_dict ['alder'] = 25
print ("Rekkefølgen på tastene etter endring av aldersverdien:")
for jeg i std_dict.gjenstander ():
skrive ut (i)

Produksjon

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

Slette verdien fra OrderedDict

Slette verdiene fra OrderDict endrer ikke rekkefølgen på tastene. Hvis vi sletter en bestemt nøkkel og setter den inn igjen, blir den lagt til på slutten. La oss se et eksempel på det. Vi vil slette 'alder' -tasten fra studentordboken og deretter sette den inn igjen.

#importing av samlingsmodulen
importer samlinger
#creating an OrderedDict of student
std_dict = samlinger.OrderedDict ()
std_dict ['name'] = 'John'
std_dict ['alder'] = 23
std_dict ['email'] = '[e-postbeskyttet]'
std_dict ['class'] = 'BS'
print ("Rekkefølgen på tastene før du endrer aldersverdien:")
#declaring a for loop to iterate through the OrderDict
for jeg i std_dict.gjenstander ():
skrive ut (i)
#sletter aldersnøkkelen
del std_dict ['alder']
skriv ut ("Rekkefølgen på tastene etter å ha slettet aldersnøkkelen:")
for jeg i std_dict.gjenstander ():
skrive ut (i)
# sette inn aldersnøkkelen og verdien på nytt
std_dict ['alder'] = 23
skriv ut ("Rekkefølgen på tastene etter å ha satt inn aldersnøkkelen på nytt:")
for jeg i std_dict.gjenstander ():
skrive ut (i)

Produksjon

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

Konklusjon

OrderedDict er underklassen til dict som ordner nøkkelen i rekkefølge og bevarer rekkefølgen når den settes inn. OrderedDict-klassen er en del av samlingsmodulen. Denne artikkelen forklarer OrderedDict, og dens funksjonalitet med eksempler.

Mus Topp 5 ergonomiske datamuseprodukter for Linux
Topp 5 ergonomiske datamuseprodukter for Linux
Gir langvarig bruk av datamaskiner smerter i håndleddet eller fingrene? Lider du av stive ledd og må hele tiden riste på deg hendene? Føler du en bren...
Mus Hvordan endre mus og berøringsplateinnstillinger ved hjelp av Xinput i Linux
Hvordan endre mus og berøringsplateinnstillinger ved hjelp av Xinput i Linux
De fleste Linux-distribusjoner leveres med "libinput" -biblioteket som standard for å håndtere inngangshendelser på et system. Den kan behandle inngan...
Mus Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kanskje du trenger et verktøy som kan gjøre at musens kontroll endres med hvert program du bruker. Hvis dette er tilfelle, kan du prøve et program som...