Tuples er en type datatype af en variabel, der lader os gemme flere objekter på ét sted. En tuple er en ordnet og uforanderlig (vi kan ikke opdatere elementer i en tuple) samling af genstande. Der er 4 indbyggede Python-datastrukturer til at gemme elementer, en af dem er en tuple, og de andre er List, Dictionary og Set, hver med sit eget sæt af egenskaber og brug. De er skrevet i runde parenteser.
Sortering af en Tuple i Python
Brug af sort()
Sorter()-metoden bruges ofte til at sortere elementer i en liste i stigende rækkefølge, hvor det første element sorteres som standard. Vi kan sortere en tupel ved først at konvertere den til en liste og derefter anvende denne funktion. Denne funktion sorterer listen på plads og returnerer Ingen.
Input
tuple_ = ('Itika', 'Arshia', 'Peter', 'Parker') list(tuple_).sort() print(tuple_) print(type(tuple_))
Produktion:
('Itika', 'Arshia', 'Peter', 'Parker')
Brug sorteret()
I Python skal du bruge den indbyggede sorted() funktion til at sortere en Tuple. Tuplen skal sendes som et argument til funktionen sorted(). Tuple-emnerne er sorteret (som standard) i stigende rækkefølge i listen returneret af funktionen. Vi kan bruge en tuple til at konvertere denne listedatatype til en tuple ().
Den omvendte parameter til funktionen sorted() kan også angive sorteringsrækkefølgen. Stigende er standardsorteringsrækkefølgen. Elementerne sorteres i faldende rækkefølge, når reverse=True er indstillet. Vi kan også angive en nøglefunktion, hvis returnerede værdier bruges til at sortere varer. Vi tager en tuple, tuple_, med heltalsværdier, og sorterer den i stigende rækkefølge i det følgende program.
binær søgealgoritme
Input
tuple_ = (5, 2, 24, 3, 1, 6, 7) sorted_ = tuple(sorted(tuple_)) print('Sorted Tuple :', sorted_) print(type(sorted_))
Produktion:
Sorted Tuple : (1, 2, 3, 5, 6, 7, 24)
Nu sorterer vi tuplet i faldende rækkefølge ved hjælp af samme funktion. Pass reverse=True til funktionen sorted() for at sortere tuple i faldende rækkefølge.
Input
design mønstre i java
tuple_ = (5, 2, 24, 3, 1, 6, 7) sorted_ = tuple(sorted(tuple_, reverse=True)) print('Sorted Tuple :', sorted_) print(type(sorted_))
Produktion:
Sorted Tuple : (24, 7, 6, 5, 3, 2, 1)
Sortering af en Tuple baseret på en nøglefunktion
En nøgle er en funktion, der tager en værdi og returnerer en værdi. For hver af varerne i tuple anvendes denne nøglefunktion, og den returnerede værdi bruges til sammenligning for at sortere varerne. I det følgende program sorterer vi tuple af strenge baseret på længden af strenge. I dette tilfælde kan vi bruge len() indbygget funktion som nøgle.
Input
tuple_ = ('abhd', 'sbchcwsc', 'sjs', 'sxshs') sorted_ = tuple(sorted(tuple_, key=len)) print('Sorted Tuple :', sorted_) print(type(sorted_))
Produktion:
Sorted Tuple : ('sjs', 'abhd', 'sxshs', 'sbchcwsc')
Sorteringsliste over Tuples
Brug sorteret()
Lad os se på, hvordan man sorterer en liste i Python ved hjælp af en tuple. Overvej følgende scenarie: vi ønsker at sortere listen over tupler. Vi skal sortere tupler efter enhver nøgle, vi får. Dette kan opnås ved hjælp af sorted()-funktionen, som sorterer elementer ved hjælp af en nøgle og gemmer nøgleindekset til sortering af de givne tuples. Python-udførelsen af denne tilgang er som følger:
Input
# 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_))
Produktion:
Sorted list of Tuples: [(27, 11, 32), (24, 12, 32), (34, 21, 56), (42, 34, 42)]
Brug af Bubble Sort
Boblesortering er blot en sorteringsalgoritme til sortering af en liste over et vilkårligt antal elementer. Hvis det tilstødende element på en given liste er i den forkerte rækkefølge, skifter det dem. Det gentager derefter denne proces, indtil alle elementerne er blevet sorteret.
I dette eksempel vil vi bruge boblesorteringsalgoritmen til at sortere en liste over tupler.
Input
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)
Produktion:
shilpa shetty alder
[('Arshia', 26), ('Itika', 53), ('MJ', 45), ('Parker', 74), ('Peter', 82)]