logo

Hvordan sortere Tuple i Python

Tuples er en type datatype for en variabel som lar oss lagre flere objekter på ett sted. En tuppel er en ordnet og uforanderlig (vi kan ikke oppdatere elementer i en tuppel) samling av varer. Det er 4 innebygde Python-datastrukturer for å lagre elementer, en av dem er en tuppel, og de andre er List, Dictionary og Set, hver med sitt eget sett med egenskaper og bruk. De er skrevet i runde parenteser.

Sortere en Tuple i Python

Bruker sorter()

Sort()-metoden brukes ofte til å sortere elementer i en liste i stigende rekkefølge, med det første elementet sortert som standard. Vi kan sortere en tuppel ved å konvertere den til en liste først og deretter bruke denne funksjonen. Denne funksjonen sorterer listen på plass og returnerer Ingen.

Inndata

 tuple_ = ('Itika', 'Arshia', 'Peter', 'Parker') list(tuple_).sort() print(tuple_) print(type(tuple_)) 

Produksjon:

 ('Itika', 'Arshia', 'Peter', 'Parker') 

Bruker sortert()

I Python bruker du den innebygde funksjonen sorted() for å sortere en Tuple. Tupelen skal sendes som et argument til sortert()-funksjonen. Tuppelelementene er sortert (som standard) i stigende rekkefølge i listen som returneres av funksjonen. Vi kan bruke en tuppel til å konvertere denne listedatatypen til en tuppel ().

Den omvendte parameteren til sorted()-funksjonen kan også spesifisere sorteringsrekkefølgen. Stigende er standard sorteringsrekkefølge. Elementene sorteres i synkende rekkefølge når reverse=True er satt. Vi kan også spesifisere en nøkkelfunksjon hvis returnerte verdier brukes til å sortere varer. Vi tar en tuppel, tuple_, som har heltallsverdier, og sorterer den i stigende rekkefølge i følgende program.

binær søkealgoritme

Inndata

 tuple_ = (5, 2, 24, 3, 1, 6, 7) sorted_ = tuple(sorted(tuple_)) print('Sorted Tuple :', sorted_) print(type(sorted_)) 

Produksjon:

 Sorted Tuple : (1, 2, 3, 5, 6, 7, 24) 

Nå sorterer vi tuppelen i synkende rekkefølge ved å bruke samme funksjon. Pass reverse=True til sorted()-funksjonen for å sortere tuppelen i synkende rekkefølge.

Inndata

java if-setning
 tuple_ = (5, 2, 24, 3, 1, 6, 7) sorted_ = tuple(sorted(tuple_, reverse=True)) print('Sorted Tuple :', sorted_) print(type(sorted_)) 

Produksjon:

 Sorted Tuple : (24, 7, 6, 5, 3, 2, 1) 

Sortere en tuppel basert på en nøkkelfunksjon

En nøkkel er en funksjon som tar en verdi og returnerer en verdi. For hver av varene i tupel brukes denne nøkkelfunksjonen, og den returnerte verdien brukes til sammenligning for å sortere varene. I det følgende programmet sorterer vi tuppel av strenger basert på lengden på strengene. I dette tilfellet kan vi bruke len() innebygd funksjon som nøkkel.

Inndata

 tuple_ = ('abhd', 'sbchcwsc', 'sjs', 'sxshs') sorted_ = tuple(sorted(tuple_, key=len)) print('Sorted Tuple :', sorted_) print(type(sorted_)) 

Produksjon:

 Sorted Tuple : ('sjs', 'abhd', 'sxshs', 'sbchcwsc') 

Sorteringsliste over Tuples

Bruker sortert()

La oss se på hvordan du sorterer en liste i Python ved hjelp av en tuppel. Tenk på følgende scenario: vi ønsker å sortere listen over tupler. Vi må sortere tupler i henhold til hvilken som helst nøkkel gitt til oss. Dette kan oppnås ved å bruke sorted()-funksjonen, som sorterer elementer ved hjelp av en nøkkel og lagrer nøkkelindeksen for sortering av de gitte tuplene. Python-utførelsen av denne tilnærmingen er som følger:

Inndata

 # Sorting list of tuples according to a key def middle(n): return n[1] # function to sort the tuple def sort(list_of_tuples): return sorted(list_of_tuples, key = middle) # driver code list_ = [(34, 21, 56), (24, 12, 32), (42, 34, 42), (27, 11, 32)] print('Sorted list of Tuples:'), print(sort(list_)) 

Produksjon:

 Sorted list of Tuples: [(27, 11, 32), (24, 12, 32), (34, 21, 56), (42, 34, 42)] 

Bruker Bubble Sort

Boblesortering er bare en sorteringsalgoritme for å sortere en liste over et hvilket som helst antall elementer. Hvis det tilstøtende elementet i en gitt liste er i feil rekkefølge, bytter det dem. Den gjentar deretter denne prosessen til alle elementene er sortert.

I dette eksemplet bruker vi boblesorteringsalgoritmen til å sortere en liste over tupler.

Inndata

 roll = [('Arshia', 26), ('Itika', 53), ('Peter', 82), ('Parker', 74), ('MJ', 45)] first = 0 last = len(roll) for k in range(0, last): for l in range(0, last-k-1): if (roll[l][first] > roll[l + 1][first]): new_item = roll[l] roll[l]= roll[l + 1] roll[l + 1]= new_item print(roll) 

Produksjon:

shilpa shetty alder
 [('Arshia', 26), ('Itika', 53), ('MJ', 45), ('Parker', 74), ('Peter', 82)]