Python Tuple je zbierka objektov oddelených čiarkami. V niektorých ohľadoch je n-tica podobná zoznamu Python, pokiaľ ide o indexovanie, vnorené objekty a opakovanie, ale hlavný rozdiel medzi oboma je, že n-tica v Pythone je nemenná, na rozdiel od zoznamu Python, ktorý je meniteľný.
Vytváranie n-tic Python
Existujú rôzne spôsoby, ako môžete vytvoriť n-ticu Python . Sú nasledovné:
- Použitie okrúhlych zátvoriek
- S jednou položkou
- Tuple Constructor
Vytvorte n-tice pomocou okrúhlych zátvoriek ()
Na vytvorenie n-tice použijeme operátory ().
Python3
var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(var)> |
>
>
Výkon:
('Geeks', 'for', 'Geeks')> Vytvorte tuple s jednou položkou
Python 3.11 nám poskytuje ďalší spôsob, ako vytvoriť tuple.
Python3
values :>tuple>[>int> |>str>, ...]>=> (>1>,>2>,>4>,>'Geek'>)> print>(values)> |
>
>
Výkon:
Tu vo vyššie uvedenom úryvku uvažujeme o premennej s názvom value, ktorá obsahuje n-ticu, ktorá pozostáva buď z int alebo str, „…“ znamená, že n-tica bude obsahovať viac ako jeden int alebo str.
(1, 2, 4, 'Geek')>
Poznámka: V prípade, že generujete n-ticu s jedným prvkom, nezabudnite za prvok pridať čiarku. Pozrime sa na príklad toho istého.
Python3
mytuple>=> (>'Geeks'>,)> print>(>type>(mytuple))> #NOT a tuple> mytuple>=> (>'Geeks'>)> print>(>type>(mytuple))> |
>
>
Výkon:
reťazec v java metódach
>
Tuple Constructor v Pythone
Na vytvorenie n-tice pomocou konštruktora Tuple odovzdáme prvky ako jej parametre.
Python3
tuple_constructor>=> tuple>((>'dsa'>,>'developement'>,>'deep learning'>))> print>(tuple_constructor)> |
>
>
Výkon :
('dsa', 'developement', 'deep learning')> Čo je Immutable v Tuples?
N-tice v Pythone sú podobné ako Python zoznamy ale nie celkom. N-tice sú nemenné a usporiadané a umožňujú duplicitné hodnoty. Niektoré charakteristiky n-tic v Pythone.
- Položky môžeme nájsť v n-tici, pretože nájdenie akejkoľvek položky nespôsobí zmeny v n-tici.
- Po vytvorení n-tice nie je možné pridávať položky.
- N-tice nie je možné pripojiť ani rozšíriť.
- Po vytvorení nemôžeme položky z n-tice odstrániť.
Pozrime sa na to na príklade.
Python3
mytuple>=> (>1>,>2>,>3>,>4>,>5>)> # tuples are indexed> print>(mytuple[>1>])> print>(mytuple[>4>])> # tuples contain duplicate elements> mytuple>=> (>1>,>2>,>3>,>4>,>2>,>3>)> print>(mytuple)> # adding an element> mytuple[>1>]>=> 100> print>(mytuple)> |
>
>
Výkon:
Python n-tice sú usporiadané a k ich prvkom môžeme pristupovať pomocou ich indexových hodnôt. Sú tiež nemenné, to znamená, že nemôžeme pridávať, odstraňovať a meniť prvky raz deklarované v n-tici, takže keď sme sa pokúsili pridať prvok na index 1, vygenerovala chyba.
2 5 (1, 2, 3, 4, 2, 3) Traceback (most recent call last): File 'e0eaddff843a8695575daec34506f126.py', line 11, in tuple1[1] = 100 TypeError: 'tuple' object does not support item assignment>
Prístup k hodnotám v Python Tuples
N-tice v Pythone poskytujú dva spôsoby, ktorými môžeme pristupovať k prvkom n-tice.
- Použitie pozitívneho indexu
- Použitie negatívneho indexu
Python Access Tuple pomocou pozitívneho indexu
Pomocou hranatých zátvoriek môžeme získať hodnoty z n-tic v Pythone.
Python3
var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(>'Value in Var[0] = '>, var[>0>])> print>(>'Value in Var[1] = '>, var[>1>])> print>(>'Value in Var[2] = '>, var[>2>])> |
>
>
Výkon:
Value in Var[0] = Geeks Value in Var[1] = for Value in Var[2] = Geeks>
Prístup k Tuple pomocou negatívneho indexu
Vo vyššie uvedených metódach používame kladný index na prístup k hodnote v Pythone a tu použijeme záporný index v [].
Python3
var>=> (>1>,>2>,>3>)> print>(>'Value in Var[-1] = '>, var[>->1>])> print>(>'Value in Var[-2] = '>, var[>->2>])> print>(>'Value in Var[-3] = '>, var[>->3>])> |
>
>
Výkon:
Value in Var[-1] = 3 Value in Var[-2] = 2 Value in Var[-3] = 1>
Rôzne operácie súvisiace s n-ticami
Nižšie sú uvedené rôzne operácie súvisiace s n-ticami v Pythone:
- Reťazenie
- Hniezdenie
- Opakovanie
- Krájanie
- Odstraňuje sa
- Nájdenie dĺžky
- Viacero dátových typov s n-ticami
- Konverzia zoznamov na n-tice
- N-tice v slučke
Reťazenie Python N-tice
Komu Reťazenie z Python Tuples budeme používať operátory plus (+).
Python3
staviteľ strún
# Code for concatenating 2 tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> # Concatenating above two> print>(tuple1>+> tuple2)> |
>
>
Výkon:
(0, 1, 2, 3, 'python', 'geek')>
Vnorenie n-tic Python
Vnorená n-tica v Pythone znamená n-ticu vo vnútri inej n-tice.
Python3
# Code for creating nested tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> tuple3>=> (tuple1, tuple2)> print>(tuple3)> |
>
>
Výkon :
((0, 1, 2, 3), ('python', 'geek'))> Opakovanie Python N-tice
Môžeme vytvoriť n-ticu viacerých rovnakých prvkov z jedného prvku v tejto n-tici.
Python3
životný cyklus vývoja softvéru
# Code to create a tuple with repetition> tuple3>=> (>'python'>,)>*>3> print>(tuple3)> |
>
>
Výkon:
('python', 'python', 'python')> Vyskúšajte vyššie uvedené bez čiarky a skontrolujte. Dostanete tuple3 ako reťazec „pythonpythonpython“.
Krájanie n-tic v Pythone
Rozdelenie n-tice Python znamená rozdelenie n-tice na malé n-tice pomocou metódy indexovania.
Python3
# code to test slicing> tuple1>=> (>0> ,>1>,>2>,>3>)> print>(tuple1[>1>:])> print>(tuple1[::>->1>])> print>(tuple1[>2>:>4>])> |
>
>
Výkon:
V tomto príklade sme rozrezali n-ticu od indexu 1 po posledný prvok. V druhom tlačovom príkaze sme vytlačili n-ticu pomocou spätného indexovania. A v treťom tlačovom príkaze sme vytlačili prvky od indexu 2 po 4.
(1, 2, 3) (3, 2, 1, 0) (2, 3)>
Poznámka: Pri delení v Pythone nie je zahrnutý koncový index.
Odstránenie Tuple v Pythone
V tomto príklade odstraňujeme n-ticu pomocou „ kľúčové slovo del' . Výstup bude vo forme chyby, pretože po odstránení n-tice sa zobrazí NameError.
Poznámka: Odstránenie jednotlivých prvkov n-tice nie je možné, ale pomocou kľúčového slova Del môžeme odstrániť celú n-ticu.
Python3
# Code for deleting a tuple> tuple3>=> (>0>,>1>)> del> tuple3> print>(tuple3)> |
>
>
Výkon:
Traceback (most recent call last): File 'd92694727db1dc9118a5250bf04dafbd.py', line 6, in print(tuple3) NameError: name 'tuple3' is not defined>
Nájdenie dĺžky pythonskej n-tice
Na zistenie dĺžky n-tice môžeme použiť funkciu len() Pythonu a odovzdať n-ticu ako parameter.
Python3
# Code for printing the length of a tuple> tuple2>=> (>'python'>,>'geek'>)> print>(>len>(tuple2))> |
>
>
Výkon:
2>
Viaceré dátové typy s n-ticou
N-tice v Pythone sú svojou povahou heterogénne. To znamená, že n-tice podporujú prvky s viacerými dátovými typmi.
Python3
# tuple with different datatypes> tuple_obj>=> (>'immutable'>,>True>,>23>)> print>(tuple_obj)> |
>
>
Výkon :
('immutable', True, 23)> Konverzia zoznamu na tuple
Môžeme previesť a zoznam v Pythone na n-ticu pomocou konštruktora tuple() a odovzdaním zoznamu ako jeho parametrov.
Python3
# Code for converting a list and a string into a tuple> list1>=> [>0>,>1>,>2>]> print>(>tuple>(list1))> # string 'python'> print>(>tuple>(>'python'>))> |
>
>
Výkon:
N-tice prevezmú jeden parameter, ktorým môže byť zoznam, reťazec, množina alebo dokonca slovník (ako prvky sa berú iba kľúče), a skonvertujú ich na n-ticu.
(0, 1, 2) ('p', 'y', 't', 'h', 'o', 'n')> N-tice v slučke
Môžeme tiež vytvoriť n-ticu s jedným prvkom pomocou slučky .
Python3
sčítačka plná sčítačka
# python code for creating tuples in a loop> tup>=> (>'geek'>,)> # Number of time loop runs> n>=> 5> for> i>in> range>(>int>(n)):> >tup>=> (tup,)> >print>(tup)> |
>
>
Výkon:
(('geek',),) ((('geek',),),) (((('geek',),),),) ((((('geek',),),),),) (((((('geek',),),),),),)>