logo

Kako razvrstiti Tuple v Pythonu

Tuples so tip podatkovnega tipa spremenljivke, ki nam omogoča shranjevanje več predmetov na enem mestu. Tuple je urejena in nespremenljiva (ne moremo posodobiti elementov v tuple) zbirka postavk. Obstajajo 4 vgrajene podatkovne strukture Python za shranjevanje elementov, ena od njih je tuple, druge pa so List, Dictionary in Set, vsaka s svojim naborom lastnosti in uporabe. Zapisani so v okroglih oklepajih.

Razvrščanje tuple v Pythonu

Uporaba sort()

Metoda sort() se pogosto uporablja za razvrščanje elementov seznama v naraščajočem vrstnem redu, pri čemer je prvi element razvrščen privzeto. Tulko lahko razvrstimo tako, da jo najprej pretvorimo v seznam in nato uporabimo to funkcijo. Ta funkcija razvrsti seznam na mestu in vrne None.

Vnos

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

Izhod:

linux free ipconfig
 ('Itika', 'Arshia', 'Peter', 'Parker') 

Uporaba sorted()

V Pythonu za razvrščanje tuple uporabite vgrajeno funkcijo sorted(). Vrvico je treba posredovati kot argument funkciji sorted(). Elementi tulp so razvrščeni (privzeto) v naraščajočem vrstnem redu na seznamu, ki ga vrne funkcija. Za pretvorbo tega podatkovnega tipa seznama v tuple () lahko uporabimo tuple ().

Obratni parameter funkcije sorted() lahko prav tako določa vrstni red razvrščanja. Naraščajoče je privzeti vrstni red razvrščanja. Elementi so razvrščeni v padajočem vrstnem redu, ko je nastavljeno reverse=True. Določimo lahko tudi ključno funkcijo, katere vrnjene vrednosti se uporabljajo za razvrščanje elementov. Vzamemo tuple, tuple_, ki ima celoštevilske vrednosti, in ga razvrstimo v naraščajočem vrstnem redu v naslednjem programu.

Vnos

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

Izhod:

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

Zdaj razvrščamo tuple v padajočem vrstnem redu z isto funkcijo. Podajte reverse=True funkciji sorted() za razvrščanje tuple v padajočem vrstnem redu.

spremenljivka globalni javascript

Vnos

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

Izhod:

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

Razvrščanje tuple na podlagi ključne funkcije

Ključ je funkcija, ki sprejme vrednost in vrne vrednost. Za vsakega od elementov v tuple se uporabi ta ključna funkcija, vrnjena vrednost pa se uporabi za primerjavo za razvrščanje elementov. V naslednjem programu razvrstimo tulko nizov glede na dolžino nizov. V tem primeru lahko kot ključ uporabimo vgrajeno funkcijo len().

Vnos

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

Izhod:

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

Razvrščanje seznama tuples

Uporaba sorted()

Poglejmo, kako razvrstiti seznam v Pythonu z uporabo tuple. Razmislite o naslednjem scenariju: želimo razvrstiti seznam tulp. Tuple moramo razvrstiti glede na kateri koli ključ, ki nam je dan. To je mogoče doseči s funkcijo sorted(), ki razvršča elemente z uporabo ključa in shrani indeks ključa za razvrščanje danih tulp. Izvedba tega pristopa v Pythonu je naslednja:

ascii od a v Javi

Vnos

 # 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_)) 

Izhod:

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

Uporaba Bubble Sort

Bubble sort je le algoritem za razvrščanje seznama poljubnega števila elementov. Če so sosednji elementi na danem seznamu v nepravilnem vrstnem redu, jih zamenja. Ta postopek nato ponavlja, dokler niso razvrščeni vsi elementi.

V tem primeru bomo uporabili algoritem za razvrščanje z mehurčki za razvrščanje seznama tupl.

int v char

Vnos

 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) 

Izhod:

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