logo

Tuples i Python

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',),),),),),)>