Python Tuple är en samling objekt separerade med kommatecken. På vissa sätt liknar en tupel en Python-lista när det gäller indexering, kapslade objekt och upprepning, men den största skillnaden mellan båda är att Python-tuppel är oföränderlig, till skillnad från Python-listan som är föränderlig.
Skapa Python Tuples
Det finns olika sätt att skapa en tuppel på Pytonorm . De är följande:
- Använder runda fästen
- Med ett föremål
- Tuple konstruktör
Skapa tuplar med runda parenteser ()
För att skapa en tupel kommer vi att använda () operatorer.
Python3
var>=> (>'Geeks'>,>'for'>,>'Geeks'>)> print>(var)> |
>
>
Produktion:
('Geeks', 'for', 'Geeks')> Skapa en Tuple med ett föremål
Python 3.11 ger oss ett annat sätt att skapa en Tuple.
Python3
referensvariabel i java
values :>tuple>[>int> |>str>, ...]>=> (>1>,>2>,>4>,>'Geek'>)> print>(values)> |
>
>
Produktion:
Här, i ovanstående utdrag, överväger vi en variabel som kallas värden som innehåller en tuppel som består av antingen int eller str, '...' betyder att tuppeln kommer att innehålla mer än en int eller str.
(1, 2, 4, 'Geek')>
Notera: Om du skapar en tupel med ett enda element, se till att lägga till ett kommatecken efter elementet. Låt oss se ett exempel på detsamma.
Python3
mytuple>=> (>'Geeks'>,)> print>(>type>(mytuple))> #NOT a tuple> mytuple>=> (>'Geeks'>)> print>(>type>(mytuple))> |
>
>
Produktion:
>
Tuple Constructor i Python
För att skapa en tupel med en Tuple-konstruktor kommer vi att skicka elementen som dess parametrar.
Python3
tuple_constructor>=> tuple>((>'dsa'>,>'developement'>,>'deep learning'>))> print>(tuple_constructor)> |
>
>
Utgång:
('dsa', 'developement', 'deep learning')> Vad är oföränderligt i Tuples?
Tuples i Python liknar Python-listor men inte helt. Tuples är oföränderliga och ordnade och tillåter dubbletter av värden. Några egenskaper hos Tuples i Python.
- Vi kan hitta föremål i en tuppel eftersom att hitta något föremål inte gör ändringar i tuplen.
- Man kan inte lägga till föremål till en tupel när den väl har skapats.
- Tuples kan inte läggas till eller förlängas.
- Vi kan inte ta bort föremål från en tupel när den väl har skapats.
Låt oss se detta med ett exempel.
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)> |
>
>
Produktion:
Python-tuplar är ordnade och vi kan komma åt deras element med hjälp av deras indexvärden. De är också oföränderliga, det vill säga vi kan inte lägga till, ta bort och ändra elementen när de en gång deklarerats i tupeln, så när vi försökte lägga till ett element vid index 1 genererade det felet.
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>
Få åtkomst till värden i Python Tuples
Tuples i Python tillhandahåller två sätt genom vilka vi kan komma åt elementen i en tupel.
- Använder ett positivt index
- Använder ett negativt index
Python Access Tuple med ett positivt index
Med hjälp av hakparenteser kan vi få värdena från tupler i Python.
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>])> |
>
>
osignerad int c-programmering
Produktion:
Value in Var[0] = Geeks Value in Var[1] = for Value in Var[2] = Geeks>
Få tillgång till Tuple med negativt index
I ovanstående metoder använder vi det positiva indexet för att komma åt värdet i Python, och här kommer vi att använda det negativa indexet inom [].
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>])> |
>
>
Produktion:
Value in Var[-1] = 3 Value in Var[-2] = 2 Value in Var[-3] = 1>
Olika operationer relaterade till Tuples
Nedan är de olika operationerna relaterade till tupler i Python:
- Sammankoppling
- Häckande
- Upprepning
- Skiva
- Tar bort
- Att hitta längden
- Flera datatyper med tupler
- Konvertering av listor till tuplar
- Tuples in a loop
Sammanfogning av Python Tuples
Till Sammankoppling av Python Tuples kommer vi att använda plusoperatorer(+).
Python3
# Code for concatenating 2 tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> # Concatenating above two> print>(tuple1>+> tuple2)> |
>
>
Produktion:
(0, 1, 2, 3, 'python', 'geek')>
Häckning av Python Tuples
En kapslad tuppel i Python betyder en tuppel inuti en annan tupel.
Python3
# Code for creating nested tuples> tuple1>=> (>0>,>1>,>2>,>3>)> tuple2>=> (>'python'>,>'geek'>)> tuple3>=> (tuple1, tuple2)> print>(tuple3)> |
>
>
Utgång:
((0, 1, 2, 3), ('python', 'geek'))> Repetition Python Tuples
Vi kan skapa en tupel av flera samma element från ett enda element i den tupeln.
Python3
# Code to create a tuple with repetition> tuple3>=> (>'python'>,)>*>3> print>(tuple3)> |
>
>
Produktion:
('python', 'python', 'python')> Prova ovanstående utan kommatecken och kontrollera. Du kommer att få tuple3 som en sträng 'pythonpythonpython'.
Skiva tuplar i Python
Att skära en Python-tuppel innebär att dela en tuppel i små tuplar med hjälp av indexeringsmetoden.
Python3
# code to test slicing> tuple1>=> (>0> ,>1>,>2>,>3>)> print>(tuple1[>1>:])> print>(tuple1[::>->1>])> print>(tuple1[>2>:>4>])> |
>
>
Produktion:
I det här exemplet delade vi tupeln från index 1 till det sista elementet. I den andra utskriften skrev vi ut tuppeln med omvänd indexering. Och i den tredje utskriftssatsen skrev vi ut elementen från index 2 till 4.
(1, 2, 3) (3, 2, 1, 0) (2, 3)>
Notera: I Python-slicing ingår inte slutindexet.
Ta bort en Tuple i Python
I det här exemplet tar vi bort en tupel med ' del' nyckelord . Utdata kommer att vara i form av fel eftersom efter att ha tagit bort tuppeln kommer det att ge ett NameError.
Notera: Det går inte att ta bort enskilda tuple-element, men vi kan ta bort hela Tuple med hjälp av nyckelordet Del.
Python3
# Code for deleting a tuple> tuple3>=> (>0>,>1>)> del> tuple3> print>(tuple3)> |
>
>
Produktion:
Traceback (most recent call last): File 'd92694727db1dc9118a5250bf04dafbd.py', line 6, in print(tuple3) NameError: name 'tuple3' is not defined>
Hitta längden på en Python Tuple
För att hitta längden på en tupel kan vi använda Pythons len() funktion och skicka tupeln som parameter.
Python3
# Code for printing the length of a tuple> tuple2>=> (>'python'>,>'geek'>)> print>(>len>(tuple2))> |
>
>
Produktion:
2>
Flera datatyper med Tuple
Tuples i Python är heterogena till sin natur. Detta innebär att tuplar stöder element med flera datatyper.
Python3
konkat strängar java
# tuple with different datatypes> tuple_obj>=> (>'immutable'>,>True>,>23>)> print>(tuple_obj)> |
>
>
Utgång:
('immutable', True, 23)> Konvertera en lista till en tuppel
Vi kan konvertera en lista i Python till en tupel genom att använda tuple()-konstruktorn och skicka listan som dess parametrar.
Python3
# Code for converting a list and a string into a tuple> list1>=> [>0>,>1>,>2>]> print>(>tuple>(list1))> # string 'python'> print>(>tuple>(>'python'>))> |
>
>
Produktion:
Tuples tar en enda parameter som kan vara en lista, sträng, set eller till och med en ordbok (endast nycklar tas som element) och konverterar dem till en tupel.
(0, 1, 2) ('p', 'y', 't', 'h', 'o', 'n')> Tuples in a loop
Vi kan också skapa en tupel med ett enda element i den med hjälp av slingor .
Python3
# 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)> |
>
>
Produktion:
(('geek',),) ((('geek',),),) (((('geek',),),),) ((((('geek',),),),),) (((((('geek',),),),),),)>