python tuple tutorial with hands examples
Preskúmajte koncept Tuple v Pythone a Tuple vs List v tejto príručke s príkladmi:
V Pythone máme štyri dátové typy zhromažďovania, ako je uvedené nižšie:
- Zoznam
- Nastaviť
- Slovník
- Násobný
V tomto tutoriáli sa podrobne pozrieme na Tuple v Pythone a jeho rôzne operácie. Neprehliadnite naše Celá škála výukových programov pre Python .
V Pythone je n-tica dátovou štruktúrou a je obdobou poľa, ktoré sa používa na ukladanie viacerých údajov naraz. Ak máte skúsenosti s inými programovacími jazykmi ako Java, C, C ++ atď., Budete oboznámení s konceptom polí, takže n-tica je takmer rovnaká ako polia.
Čo sa dozviete:
- Čo je to Tuple?
- Tuple vs List
- Vytvára sa n-tica
- Prístup k hodnotám v Tuple
- Negatívne indexovanie
- Krájanie n-tice
- Zmena n-tice
- Prevod zoznamu na n-ticu
- Prevod n-tice na reťazec
- Zoraďte Tuple v Pythone
- Balenie a rozbalenie tice
- NamedTuple
- Vrátiť Tuple
- Tuple Index je mimo rozsahu
- Odstraňuje sa n-tica
- Základné operácie s n-ticami
- Vstavané metódy n-tice
- Záver
- Odporúčané čítanie
Čo je to Tuple?
Tuple je dátová štruktúra, ktorá sa používa na ukladanie viacerých údajov naraz. Dáta uložené v n-tici sú heterogénne, čo z nej robí najvýkonnejšiu vlastnosť n-tice v Pythone. Môžeme uložiť viac údajov z rôznych dátových typov, ako sú String, Celé čísla a objekty, rovnako v jednej n-tici.
N-tica je v Pythone nemenná, takže údaje sa po priradení nemôžu zmeniť.
K dátam uloženým v n-tici sa pristupuje pomocou ich indexu, pretože n-tový index bude vždy začínať od nuly. Každý prvok má v n-tici konkrétne miesto a všetky tieto údaje sú prístupné pomocou indexu.
Tuple vs List
- Zoznam v Pythone je premenlivý (hodnoty je možné meniť), zatiaľ čo Tuple je nemenný (hodnoty nie je možné meniť)
- V porovnaní s dátovou štruktúrou zoznamu poskytuje n-tica v Pythone menej funkcií.
- Pretože n-tice sú nemenné, zvyšuje výkon, pretože iterácia v n-tici je rýchlejšia v porovnaní so zoznamom.
Vytvára sa n-tica
Údaje v n-tici sú uložené s čiarkou a sú uzavreté v zátvorke (). N-tice môžu obsahovať ľubovoľný počet položiek rôznych typov.
Syntax:
Tuple = (item1, item2, item3)
Príklad: 1
Tuple = ()
Príklad: 2
Tuple = (2, 4, 5.6)
Príklad: 3
Tuple = (2, 5, 4.5, “Hi”)
Príklad: 4
Tuple = (“Hi”, “Hello”, “Python”)
Ak sledujeme vyššie uvedené príklady, uložili sme položky rôznych dátových typov s čiarkou, kde 2 a 5 sú typu Integer, 4.5 je typu float a ‘Hi‘ je typu String. Môžeme tiež vyhlásiť prázdnu n-ticu.
ako otvoriť súbor .dat?
Môžeme tiež vyhlásiť zoznam alebo n-ticu vo vnútri n-tice, ktorá sa nazýva vnorená n-tica.
Príklad: 5
Tuple = (“Python”, [2, 4, 6], (4, 5.6, “Hi”)) print(“Contents of tuple is:”, Tuple)
Výkon:
Obsah n-tice je: („„ Python “, [2, 4, 6], (4, 5.6,„ Hi “))
Ak sledujete vyššie uvedený príklad, deklarovali sme zoznam a n-ticu v inej n-tici.
Ak n-tica obsahuje iba jeden prvok, nepovažuje sa to za n-ticu. Tlmočníkom by mala byť koncová čiarka, ktorá určí, že ide o n-ticu.
Pozrime sa na príklad nižšie
Príklad: 6
my_tuple = (“Python”) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (10) Print(“Type of my_tuple is:”, type(my_tuple)) my_tuple = (“Python”, ) Print(“Type of my_tuple is:”, type(my_tuple))
Výkon:
Typ my_tuple je:
Typ my_tuple je:
Typ my_tuple je:
Prístup k hodnotám v Tuple
Existuje niekoľko spôsobov, ako môžeme v Pythone získať prístup k položkám prítomným vo vnútri n-tice. Pomocou indexu môžeme získať prístup k prvkom n-tice. Index začína na 0 a index by mal byť vždy celé číslo. Ak použijeme iný index ako celé číslo ako float, výsledkom bude TypeError.
Príklad: 1
Tuple = (3, 5, 6.7, “Python”) print(“Tuple is:”, Tuple)
Výkon:
Tuple je: (3. 5. 6.7, „Python“)
Vo vyššie uvedenom príklade sme n-ticu priamo vytlačili pomocou funkcie tlače a nepristupujeme k jednotlivým prvkom n-tice.
Poďme k jednotlivým prvkom n-tice.
Príklad: 2
Tuple = (3, 5, 6.7, “Python”) print(“Third element of the Tuple is:”, Tuple[2])
Výkon:
Tretím prvkom n-tice je: 6.7
Príklad: 3
Tuple = (3, 5, 6.7, “Python”) print(“First element of the Tuple is:”, Tuple[0]) print(“Last element of the Tuple is:”, Tuple[3])
Výkon:
Prvý prvok n-tice je: 3
Posledným prvkom n-tice je: „Python“
K položkám prítomným vo vnorenej n-tici môžeme tiež pristupovať pomocou vnorenej indexácie.
Príklad: 4
Tuple = (“Python”, [2, 4, 6], (4, 5.6, “Hi”)) print(“First element of the tuple is:”, Tuple[0][1]) print(“Items present inside another list or tuple is:”, Tuple[2][1])
Výkon:
Prvý prvok n-tice je: „y“
Položky nachádzajúce sa v inom zozname alebo n-tici sú: 5.6
Ako sa uvádza v Výukový program pre zoznam Python hodnoty vo vnorenom zozname sú uložené vo forme matice, podobne sa riadi rovnakým konceptom aj Tuple.
P y t h o n
2 4 6
4 5.6 Ahoj
Keď sa teda pokúsime získať prístup k Tuple [0] [1], bude to ukazovať na 1svriadok a 2ndstĺpec, takže údaje budú „y“.
Podobne, keď sa pokúsime získať prístup k zoznamu [2] [1], bude to ukazovať na 3rdriadok a 2ndstĺpec takže, údaje budú 5,6
Poznámka:Vyššie uvedený koncept funguje iba pri pokuse o prístup k položkám n-tice pomocou vnoreného indexovania.
Negatívne indexovanie
K údajom môžeme pristupovať aj pomocou záporného indexu. Negatívny index bude vždy začínať od -1 a -1 sa vzťahuje na posledný prvok a -2 na poslednú druhú položku, a teda spolu.
Vždy pamätajte, že pozitívne indexovanie sa používa na iteráciu položiek n-tice vpred, zatiaľ čo negatívne indexovanie sleduje spätný spôsob.
Príklad: 1
Tuple = (3, 5, 7.8) print(“Last element of the tuple is:”, Tuple[-1])
Výkon:
Posledný prvok n-tice je: 7.8
Príklad: 2
najlepšie miesto na pozeranie anime zadarmo
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple[-3])
Výkon:
Prvý prvok n-tice je: 3
Krájanie n-tice
Pomocou operátora rezu (:) môžeme získať prístup k množstvu prvkov z n-tice.
Príklad: 1
Tuple = [1, 2.5, 3, 4.9, 5, 6, “Python”] print(“Elements from 2nd to 5th is: ”, Tuple[1:5]) print(“Elements beginning to 4th is: ”, Tuple[:-3]) print(“Elements 4th to end is: ”, Tuple[3:]) print(“Elements from start to end is: “, Tuple[:])
Výkon:
Prvky od 2. do 5. sú: (2,5; 3; 4,9; 5)
Prvky začínajúce na 4. mieste sú: (1, 2,5, 3, 4,9)
Prvky 4. až koniec sú: (4,9, 5, 6, „Python“)
Prvky od začiatku do konca sú: (1, 2,5, 3, 4,9, 5, 6, „Python“)
K prvkom prítomným v n-tici môžeme tiež pristupovať pomocou slučky for.
Príklad: 2
Tuple = (3, 5, 7.8) print(“First element of the tuple is:”, Tuple[-3])
Výkon:
jeden
dva
3.5
5
'Ahoj'
Zmena n-tice
Ako vieme, n-tice sú v Pythone nemenné, a preto nie je možné údaje meniť, zoznamy sú však zmeniteľné. Zoznamy prítomné vo vnútri n-tice (vnorená n-tica) sa dajú teda zmeniť.
Príklad: 1
Tuple = (3, 4.5, [4, 5, 6]) print(“Original Tuple is:”, Tuple) Tuple[2][0] = 2 print(“Updated Tuple is:”, Tuple)
Výkon:
Pôvodná n-tica je: (3, 4,5, [4, 5, 6])
Aktualizovaná n-tica je: (3, 4,5, [2, 5, 6])
V Tuple nemôžeme použiť funkciu append () alebo extend (), pretože n-tice sú nemenné. Nemôžete tiež použiť funkciu remove () alebo pop ().
Prevod zoznamu na n-ticu
Zoznam môžeme previesť na Tuple pomocou vstavanej funkcie Pythonu s názvom tuple ().
Syntax:
tuple(arg1)
Funkcia Tuple () prijíma jeden argument a argumentom by mal byť názov premennej zoznamu.
Príklad: 1
List = [2, 4, 5.6, “Hi”] print(“Original List is:”, List) Tuple = tuple(List) print(“After converting to tuple is:”, Tuple)
Výkon:
Pôvodný zoznam je: [2, 4, 5,6, „Ahoj“]
Po prevedení na n-ticu je: (2, 4, 5,6, „Ahoj“)
Prevod n-tice na reťazec
Tuple môžeme tiež previesť na String pomocou 2 spôsobov.
Prístup: 1
Pomocou zabudovanej metódy join () z reťazca môžeme previesť Tuple na reťazec.
Príklad: 1
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Výkon:
Pred konverziou na reťazec: („P“, „y“, „t“, „h“, „o“, „n“)
Po konverzii na reťazec: „Python“
Prístup: 2
Metóda redukovať () z functools sa používa na prevod Tuple na String. Táto metóda zreťazí znak prítomný v n-tici a vytvorí reťazec.
Príklad: 2
import operator import functools def convertTupleToString(my_tuple): s = functools.reduce(operator.add, (my_tuple)) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Výkon:
Pred konverziou na reťazec: („P“, „y“, „t“, „h“, „o“, „n“)
Po konverzii na reťazec: „Python“
Poznámka: Tuple môžete previesť na String iba v prípade, že Tuple obsahuje znaky. Ak n-tica obsahuje ľubovoľnú položku typu integer alebo float, potom spôsobí chybu.
Príklad: 3
def convertTupleToString(my_tuple): s = ‘’.join(my_tuple) return s Tuple = (‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’, 4, 6.5) print(“Before converting to String:”, Tuple) str = convertTupleToString(Tuple) print(“After converting to String:”, str)
Výkon:
Pred konverziou na reťazec: („P“, „y“, „t“, „h“, „o“, „n“, 4, 6,5)
Traceback (posledný posledný hovor):
Súbor „“, riadok 1, v
str = ”. pripojiť (Tuple)
TypeError: položka sekvencie 6: očakávaná inštancia str, nájdený int
Zoraďte Tuple v Pythone
V pythone máme zabudovanú funkciu s názvom triedené () na triedenie prvkov n-tice.
Syntax:
sorted(arg1)
Metóda ordered () prijíma jeden argument, ktorým je názov premennej.
Príklad: 1
def sortTuple(my_tuple): sort = sorted(my_tuple) return sort Tuple = (2, 4, 6, 1, 4, 7.8, 2.7) print(“Before sorting the Tuple is:”, Tuple) sortedTuple = sortTuple(Tuple) print(“After sorting the Tuple is:”, sortedTuple)
Výkon:
Pred triedením je Tuple: (2, 4, 6, 1, 4, 7,8, 2,7)
Po triedení je Tuple: [1, 2, 2,7, 4, 4, 6, 7,8]
Balenie a rozbalenie tice
Python poskytuje dôležitú funkciu nazvanú balenie a rozbalenie. Pri balení dávame hodnotu do n-tice, ale pri rozbaľovaní extrahujeme všetky tieto hodnoty uložené v n-ticiach do premenných.
Príklad: 1
Tuple = (“John”, 23567, “Software Engineer”) (eName, eID, eTitle) = Tuple print(“Packed tuples is:”, Tuple) print(“Employee name is:”, eName) print(“Employee ID is:”, eID) print(“Employee Title is:”, eTitle)
Výkon:
Zbalené n-tice sú: („John“, 23567, „softvérový inžinier“)
Meno zamestnanca je: John
ID zamestnanca je: 23567
Názov zamestnanca je: softvérový inžinier
Ak si všimnete v uvedenom prípade v riadku číslo 2, rozbaľujeme n-ticu do niektorých premenných.
Poznámka: Počet položiek v n-tici by sa mal rovnať počtu premenných v rozbalenej n-tici.
NamedTuple
Python poskytuje špeciálny typ funkcie s názvom namedtuple (), ktorá pochádza z modulu zhromažďovania.
Pomenované n-tice sú podobné slovníku, ktorý obsahuje kľúče a hodnoty. Rozdiel je však v tom, že v slovníku môžeme k hodnote pristupovať iba pomocou kľúča, ale NamedTuple podporuje prístup z hodnoty aj z kľúča.
Existujú tri spôsoby, ako môžeme získať prístup k hodnotám nemaedtuple ().
- Prístup podľa indexu
- Prístup pomocou kľúča
- Prístup metódou getattr ()
Príklad: 1
import collections Employee = collections.namedtuple(‘Employee’, [‘name’, ‘ID’, ‘Title’]) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) #Accessing using index print(“Employee name is:”, Emp[0]) # Accessing using key print(“Employee ID is:”, Emp.ID) #Access by getattr() method print(“Employee Title is:”, getattr(Emp, ‘Title’))
Výkon:
Meno zamestnanca je: John
ID zamestnanca je: 23567
Názov zamestnanca je: softvérový inžinier
Pre funkciu namedtuples () máme podporované aj tri operácie prevodu.
- _urobiť()
- _asdict ()
- ** (Dvojitý štart) operátor
Príklad: 2
import collections Employee = collections.namedtuple(‘Employee’, [‘name’, ‘ID’, ‘Title’]) Emp = Employee(‘John’, ‘23567’, ‘Software Engineer’) Emp1 = [‘Mathew’, ‘45783’, “Software Developer”] Emp2 = {‘name’ : “Helen”, ‘ID’ : 56873, ‘Title’ : “Test Lead”} #Using _make() print(Employee._make(Emp1)) #Using _asdict() print(Emp._asdict()) #Using ** operator print(Employee(**Emp2))
Výkon:
Zamestnanec (meno = ‘Mathew’, ID = ’45783 ′, titul =‘ softvérový vývojár ’)
OrderedDict ([(„meno“, „John“), („ID“, „23567“), („Názov“, „Softvérový inžinier“)])
Zamestnanec (meno = „Helen“, ID = 56873, titul = „testovací vedúci“)
Vrátiť Tuple
Zbierku hodnôt alebo n-tíc môžeme vrátiť pomocou príkazu return.
Príklad: 1
def my_fun(): name = “John” ID = 23567 Title = “Software Engineer” return (name, ID, Title) employee = my_fun() print(“Employee detail is:”, employee)
Výkon:
Podrobnosti o zamestnancovi: („John“, 23567, „softvérový inžinier“)
Tuple Index je mimo rozsahu
Index mimo rozsahu je jednou z bežných výnimiek, ktoré dostaneme pri práci s Tuples alebo zoznamom. Táto výnimka sa zvyčajne vyskytuje, keď sa pokúsite získať prístup k položke mimo n-ticu, rozsah, čo znamená, že n-tice obsahujú iba 3 prvky a ak sa pokúsite získať prístup k 4.thelement potom dostane index n-tice mimo rozsahu rozsahu.
Príklad: 1
Tuple = (4, 7, 1.2, “Hi”) print(Tuple[4])
Výkon:
Traceback (posledný posledný hovor):
Súbor „“, riadok 1, v
Tuple [4]
IndexError: n-tica indexu mimo rozsahu
Ak pozorujete vo vyššie uvedenom príklade, pokúšame sa získať prístup k prvku, ktorý je prítomný na 5thpozíciu, ale nie je tam prítomný žiadny prvok, preto vyhodí n-tový index mimo výnimku rozsahu.
Odstraňuje sa n-tica
Z n-tice nemôžeme odstrániť jednotlivé prvky, pretože n-tice sú nemenné. Jediným spôsobom, ako odstrániť prvky z n-tice, je odstrániť celú n-ticu.
Python poskytuje zabudovanú funkciu „del“ na odstránenie celej n-tice.
Príklad: 1
Tuple = (2, 4.5, “Python”) print(“Before deleting the tuple:”, Tuple) del Tuple print(“After Deleting the tuple:”, Tuple)
Výkon:
Pred odstránením n-tice: (2, 4.5, „Python“)
Traceback (posledný posledný hovor):
Súbor „“, riadok 1, v
tlač („Po odstránení n-tice:“, n-tica)
NameError: názov ‘Tuple’ nie je definovaný
Vo vyššie uvedenom príklade sa po odstránení n-tice snažíme n-ticu vytlačiť, ale už neexistuje. Preto to hodí NameError.
Základné operácie s n-ticami
Pomocou n-tíc môžeme vykonávať niektoré základné operácie ako zreťazenie, opakovanie atď.
Pozrime sa na všetky základné operácie s niekoľkými príkladmi.
Príklad: 1 - Tuple zreťazenie
Ticie môžeme zreťaziť pomocou operátora „+“.
Tuple1 = (3, 5, “Hi”) Tuple2 = (5.6, 1, “Python”) print(“Tuple 1 is:”, Tuple1) print(“Tuple 2 is”, Tuple2) print(“Concatenation of Tuple 1 and Tuple 2 is:”, Tuple1+Tuple2)
Výkon:
Tuple 1 is: (3, 5, „Hi“)
Tuple 2 is: (5.6, 1, “Python”)
Zreťazenie Tuple 1 a Tuple 2 je: (3, 5, „Hi“, 5,6, 1, „Python“)
Príklad: 2 - Opakovanie n-tice
Opakovanie n-tice znamená opakovanie prvkov n-tice viackrát. To sa dá dosiahnuť pomocou operátora „*“.
Tuple = (3, 1, 5.6, “Python”) print(“Before the repetition the tuple is:”, Tuple) print(“After the repetition the tuple is:”, Tuple*3)
Výkon:
skopírovať pole do iného poľa java
Pred opakovaním je n-tica: (3, 1, 5,6, „Python“)
Po opakovaní je n-tica: (3, 1, 5,6, „Python“, 3, 1, 5,6, „Python“, 3, 1, 5,6, „Python“)
Príklad: 3 - Prevádzkovateľ členstva
Pomocou operátora „in“ môžeme skontrolovať, či sa v n-tici nachádza konkrétny prvok. Vráti boolovskú hodnotu True, ak je prvok v n-tici, a vráti False, ak prvok nie je prítomný.
Tuple = (3, 2, 6) print(“Is element 2 present in Tuple:”, 2 in Tuple)
Výkon:
Je prvok 2 prítomný v Tuple: True
Vstavané metódy n-tice
Python poskytuje pre n-tice niekoľko vstavaných metód, ako je popísané v nasledujúcej tabuľke.
Metódy | Popis |
---|---|
akýkoľvek() | Vráti hodnotu True, ak je v n-tici akýkoľvek prvok, a vráti hodnotu False, ak je n-tica prázdna |
min () | Vráti najmenší prvok (celé číslo) n-tice |
max () | Vráti najväčší prvok (celé číslo) n-tice |
len() | Vráti dĺžku n-tice |
zoradené () | Používa sa na triedenie všetkých prvkov n-tice |
suma () | Vráti súčet všetkých prvkov (celých čísel) n-tic |
Pozrime sa, ako použiť všetky metódy na príklade.
Príklad: 1 - ľubovoľná () metóda
Tuple = (3, 1, 4.5) print(“Is there any elements present in Tuple:”, any(Tuple)) Tuple1 = () print(“Is there any elements present in Tuple1:”, any(Tuple1))
Výkon:
Existujú nejaké prvky v Tuple: True
Existujú v Tuple1: False nejaké prvky
Príklad: metóda 2 - min ()
Tuple = (3, 5.6, 5, 8) print(“Smallest element in the tuples is:”, min(Tuple))
Výkon:
Najmenší prvok v n-ticiach je: 3
Príklad: metóda 3 - max ()
Tuple = (3, 5.6, 5, 8) print(“Largest element in the tuples is:”, max(Tuple))
Výkon:
Najväčší prvok v n-ticiach je: 8
Príklad: metóda 4 - len ()
Tuple = (3, 5.6, 5, 8) print(“Length of the tuple is:”, len(Tuple))
Výkon:
Dĺžka n-tice je: 4
Príklad: 5 - triedená () metóda
Tuple = (2, 3.5, 1, 6, 4) print(“Sorted integer is:”, sorted(Tuple)) Tuple1 = (‘e’, ‘a’, ‘u’, ‘o’, ‘i’) print(“Sorted character is:”, sorted(Tuple1))
Výkon:
Zoradené celé číslo je: (1, 2, 3,5, 4, 6)
Zoradený znak je: („a“, „e“, „i“, „o“, „u“)
Príklad: metóda 6 - súčet ()
Num = (3, 5.1, 2, 9, 3.5) print('Sum of all the numbers in the tuples is:', sum(Num))
Výkon:
Súčet všetkých čísel v n-ticiach je: 22.6
Záver
Tuple je jedným z dátových typov v Pythone, ktorý sa tiež označuje ako dátová štruktúra.
Pythonská n-tica sa používa na ukladanie veľkého počtu hodnôt ľubovoľných dátových typov do jednej premennej. N-tice sú nemenné, a preto zvyšuje výkon prístupu k hodnotám z n-tice.
Keď pracujete s n-ticami, je potrebné pamätať na všetky zabudované metódy n-tice.
Dúfam, že by ste v Pythone získali nesmierne vedomosti o koncepte Tuple !!
Odporúčané čítanie
- Výukový program pre Python DateTime s príkladmi
- Výukový program pre Python pre začiatočníkov (praktické školenie v jazyku Python ZDARMA)
- Výukový program pre hlavné funkcie Pythonu s praktickými príkladmi
- Hĺbkové návody pre zatmenie pre začiatočníkov
- Funkcie reťazca Python
- Výukový program pre rozdelenie reťazcov Python
- Výukový program JAVA pre začiatočníkov: viac ako 100 praktických výučbových programov Java Video
- Premenné Pythonu