logo

Python bestilt sett

Vi skal lære om hvordan vi kan lage rekkefølgesettet ved å bruke forskjellige metoder ved å bruke Python. Et bestilt sett er en datastruktur der datarekkefølgen kan bevares, og den brukes når vi krever at posisjonen til data forblir fast i den rekkefølgen vi har satt inn. Det skal bemerkes at, Vi er i stand til å iterere det bestilte settet, noe som betyr at det bestilte settet når vi erklærer at posisjonen til verdien er fast. Men i settet vil du få en abonnentfeil mens du itererer fordi posisjoner ikke er faste i settet.

Eksempel:



input_dataSet = {Prince, Aditya, Praveer, Shiv}

Utgang ved uordnet sett: {Aditya, Prince, Shiv, Praveer}, Det kan være tilfeldig plassering på din side

Utgang ved bestilt sett: {Prince, Aditya, Praveer, Shiv}



Forklaring: Som du vet i Python hvis du skriver ut dette settet mer én gang enn, hver gang vil du få tilfeldig plassering av elementene for samme datasett.

Men i tilfelle bestilt sett vil du få det samme datasettet hver gang i samme rekkefølge du hadde satt inn elementer.

Det er tre metoder for å lage de bestilte settene i Python:



  • Ved å bruke en ordbok data struktur
  • Ved å bruke liste data struktur
  • Ved å bruke den bestilte settmodulen (eller klassen)

Bestilt sett ved hjelp av ordbokens datastruktur

Vi kan bruke ordbokdatastrukturen til å lage det ordnede settet fordi ordboken i seg selv er den ordnede datastrukturen der vi vil bruke settelementer som nøkler fordi nøkler er unike i ordboken og på verdiensted kan vi lage den tomme strengen. La oss ta en titt på implementeringen som forklart nedenfor:

Python3




# Creation of ordered set using the dict data structure> dictionary>=> {>'Prince'>: '>', '>Aditya>': '>',> >'Praveer'>: '>', '>Prince>': '>', '>Shiv>': '>'}> print>(dictionary)> # For accessing only keys from the dictionary> for> key>in> dictionary.keys():> >print>(key, end>=>' '>)>

>

linux hvordan gi nytt navn til en katalog
>

Produksjon:

{'Prince': '', 'Aditya': '', 'Praveer': '', 'Shiv': ''} Prince Aditya Praveer Shiv>

Bestilt sett ved hjelp av listedatastrukturen

Vi kan bruke listedatastrukturen til å lage rekkefølgesettet ved å bruke å fjerne dupliserte elementer fra det. La oss ta en titt på implementeringen som forklart nedenfor:

Python3




def> removeduplicate(data):> >countdict>=> {}> >for> element>in> data:> >if> element>in> countdict.keys():> > ># increasing the count if the key(or element)> ># is already in the dictionary> >countdict[element]>+>=> 1> >else>:> ># inserting the element as key with count = 1> >countdict[element]>=> 1> >data.clear()> >for> key>in> countdict.keys():> >data.append(key)> dataItem>=> [>'Prince'>,>'Aditya'>,>'Praveer'>,>'Prince'>,>'Aditya'>,>'Shiv'>]> print>(>'Before removing duplicate elements from dataItems'>, dataItem)> removeduplicate(dataItem)> print>(>'Created ordered set by removing duplicate elements'>, dataItem)>

>

>

Produksjon:

Before removing duplicate elements from dataItems ['Prince', 'Aditya', 'Praveer', 'Prince', 'Aditya', 'Shiv'] Created ordered set by removing duplicate elements ['Prince', 'Aditya', 'Praveer', 'Shiv']>

Bestilt sett med den bestilte settmodulen (eller klassen)

Som standard har du et uordnet sett i Python, men for å lage det bestilte settet må du installere modulen som heter ordered-set by pip-pakkeinstallasjonsprogrammet som nevnt nedenfor:

Hvordan installere den bestilte settmodulen

Ved å bruke pip-pakkeinstallasjonsprogrammet laster du ned den bestilte modulen som nevnt nedenfor:-

pip install ordered_set>

Syntaks for orderedSet:

orderedSet(Listname)>

Eksempel:

Nå, for mer avklaring, la oss iterere det bestilte settet fordi settet ikke kan itereres som nevnt nedenfor:

Python3




alfabetet av tall
from> ordered_set>import> OrderedSet> createOrderedSet>=> OrderedSet(> >[>'GFG'>,>'is'>,>'an'>,>'Excellent'>,> >'Excellent'>,>'platform'>])> print>(createOrderedSet)> # we are able to iterate it similar to list data type> for> index>in> range>(>len>(createOrderedSet)):> >print>(createOrderedSet[index], end>=>' '>)>

>

>

Produksjon:

OrderedSet(['GFG', 'is', 'an', 'Excellent', 'platform']) GFG is an Excellent platform>

Tidskompleksitet: O(n), hvor n er antall elementer i det bestilte settet

Hjelpemellomrom: O(n) , hvor n er antall elementer i det bestilte settet