Nyheter i Android, Telefoner, Prylar Och Recensioner

Hur man skapar och använder Tuples i Python

En tupel är en samling oföränderliga Python-objekt. Den kan innehålla element av vilken godtycklig datatyp som helst (heltal, sträng, flytande, lista, etc.) vilket gör den till en flexibel och kraftfull datastruktur. Det är en del av Pythons kärnspråk och används ofta i Python-program och projekt.

Skapa en Tuple

En tupel i Python kan skapas genom att omsluta alla kommaseparerade element inuti parentesen ().

t1 = (1, 2, 3, 4)
t2 = ("Make", "Use", "Of")
t3 = (1.2, 5.9, 5.4, 9.3)

Delarna av tupeln är oföränderliga och ordnade. Det tillåter dubbletter av värden och kan ha valfritt antal element. Du kan till och med skapa en tom tupel. En tupels element kan vara av vilken datatyp som helst (heltal, float, strängar, tupel, etc.).

Skapa en tom tuppel

En tom tuppel kan skapas genom att använda tomma öppnings- och stängningsparenteser.

emptyTuple = ()

Skapa en tuppel med ett enda element

För att skapa en tuppel med endast 1 element måste du lägga till en kommatecken efter elementet för att få det igenkänd som en tupel av Python.

 # t1 is a tuple
t1 = ( 3.14, )
print( type(t1) )
# prints
<class 'tuple'>
 # t2 is not a tuple
t2 = ( 3.14 )
print( type(t2) )
# prints
<class 'float'>

Notera: typ() Funktionen returnerar klasstypen för objektet som skickas som en parameter.

Genom att inte använda ett kommatecken efter elementet resulterar i klasstypen t2 som ‘float’, därför är det obligatoriskt att använda ett kommatecken efter elementet när du skapar en tupel med ett enda värde.

Skapa en tuppel med olika datatyper

Element i tupeln kan vara av vilken datatyp som helst. Denna funktion gör tuppeln mångsidig.

tup1 = ( 'MUO', True, 3.9, 56, [1, 2, 3] )
print( tup1 )
# prints
('MUO', True, 3.9, 56, [1, 2, 3])

Skapa en Tuple Använda tuple() Constructor

Tuples kan också skapas med hjälp av tuppel() konstruktör. Med hjälp av tuple()-konstruktorn kan du konvertera sekvenser som list/ordbok till en tupel.

tup1 = tuple( (1, 2, 3) )
print( tup1 )
# prints
(1, 2, 3)

Skapa en kapslad tuppel

Tuplar kan enkelt häckas inuti de andra tuplarna. Du kan kapsla tupeln upp till vilken nivå du vill.

tup1 = (1, 2, 3)
tup2 = ( 'Hello', tup1, 45 )
print( tup2 )
# prints
('Hello', (1, 2, 3), 45)

Få åtkomst till element i en Tuple

Du kan komma åt tupelelement med hjälp av indexnummer inom hakparenteserna. Indexnummer börjar från 0. Tuple stöder även negativ indexering:

Relaterad  Innehållskurering – Översikt – Konvertera med innehåll

-1: pekar på det sista elementet -2: pekar på det näst sista elementet och så vidare

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
print( tup1[0] )
print( tup1[5] )
print( tup1[-1] )
print( tup1[-9] )
# prints
M
S
F
M

Skiva en tupel

Du kan komma åt en rad element i en tupel med hjälp av kolon : operatör. Tuple stöder också skivningsoperation med negativa index.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
# Prints elements from index 1(included) to index 6(excluded)
print( tup1[1:6] )
# Prints elements from start to index 8(excluded)
print( tup1[:8] )
# Prints elements from index 3(included) to the end
print( tup1[3:] )
# Prints elements from index -4(included) to index -1(excluded)
print( tup1[-4:-1] )
# prints
('A', 'K', 'E', 'U', 'S')
('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O')
('E', 'U', 'S', 'E', 'O', 'F')
('S', 'E', 'O')

Kontrollera om ett element finns i en tuppel

Du kan kontrollera om ett element finns i en tupel med hjälp av i nyckelord.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
if 'M' in tup1:
    print("Yes, the element M exists in the tuple")
else:
    print("Element not found in the tuple !!")

# prints
Yes, the element M exists in the tuple

Uppdaterar Tuples

Som tupler som oföränderliga är det inte möjligt att ändra deras värde. Python kastar ett TypeError om du försöker uppdatera tupeln.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
tup1[0] = 'Z'
# Following error is thrown
tup1[0] = 'Z'
TypeError: 'tuple' object does not support item assignment

Men det finns ett hack om du vill uppdatera din tupel.

Ändra värdet på element i en tuppel med hjälp av listor

Du kan ändra värdet på element i din tupel med hjälp av listor i Python. Först måste du konvertera tupeln till en lista. Ändra sedan listan som du vill. Slutligen, konvertera listan tillbaka till en tupel.

tup1 = ( 1, 2, 3 )
print( "This is the old Tuple: ")
print( tup1 )
temp = list( tup1 )
temp[0] = 4
tup1 = tuple( temp )
print( "This is the Updated Tuple: ")
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(4, 2, 3)

Lägg till nya element i en tuppel med hjälp av listor

Eftersom tupler är oföränderliga är det inte möjligt att lägga till nya element i en tupel. Python kommer att skicka ett fel som:

AttributeError: 'tuple' object has no attribute 'append

Återigen, du kan använda vårt hack (med hjälp av listor) för att hantera detta. Konvertera först tupeln till en lista. Lägg sedan till nya element i listan. Slutligen, konvertera listan till en tupel.

Relaterad  PlayStation: Adventskalender med konsol – priser den 22 december

Notera: metoden append() används i Python för att lägga till ett nytt element i slutet av listan.

tup1 = ( 1, 2, 3 )
print( "This is the old Tuple: ")
print( tup1 )
temp = list( tup1 )
temp.append(4)
tup1 = tuple( temp )
print( "This is the Updated Tuple: ")
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(1, 2, 3, 4)

Ta bort operation på Tuples

Eftersom tupler är oföränderliga är det inte möjligt att ta bort något element från tuplen. Om du vill radera hela tuppeln kan det göras med hjälp av del nyckelord.

tup1 = ( 1, 2, 3 )
del tup1

Men du kan använda samma hack (med listor) som du använde för att ändra och lägga till tupelobjekt.

Ta bort element från en tuppel med listor

Element kan raderas från tuplen med hjälp av listor i tre enkla steg:

Steg 1: Konvertera tupeln till en lista.

Steg 2: Ta bort elementen från listan med hjälp av avlägsna() metod

Steg 3: Konvertera listan till en tupel.

tup1 = ( 1, 2, 3 )
print( "This is the old Tuple: ")
print( tup1 )
temp = list( tup1 )
temp.remove(1)
tup1 = tuple( temp )
print( "This is the Updated Tuple: ")
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(2, 3)

Packa och packa upp tuplar

När du skapar en tupel tilldelas värden. Det här kallas Packa en Tuple.

# Example of packing a tuple
tup1 = ( 1, 2, 3)

Medan att extrahera värdena tillbaka till variabler kallas Packar upp en Tuple.

# Example of unpacking a tuple
tup1 = ( 1, 2, 3 )
( one, two, three ) = tup1
print( one )
print( two )
print( three )
# prints
1
2
3

Slingor Med Python Tuples

Tuples är itererbara behållare precis som listor i Python. Du kan enkelt loopa igenom tupelelementen.

Relaterad  Kolla in dessa sju 3D-printade fotoprylar som du kan göra själv

Används för Loop

Pythons for loop fungerar genom att iterera genom elementen i behållaren.

# Looping using for loop
tup1 = ( 1, 2, 3 )
for element in tup1:
print( element )
# prints
1
2
3

Använda indexnummer

Du kan iterera genom tupeln med hjälp av index över tupler. Använd len() funktion för att hitta storleken på tupeln.

tup1 = ( 1, 2, 3 )
for index in range(len(tup1)):
print( tup1[index] )

# prints
1
2
3

Förbättra din kodeffektivitet

Eftersom tupeldatastrukturen är oföränderlig, är dess bearbetningshastigheten är snabbare än listor. Således ger det optimering till Python-program/projekt. Att använda denna kraftfulla och mångsidiga datastruktur (tupler) i dina Python-program kommer att ta din kodeffektivitet till nästa nivå.

Om författaren

Yuvraj Chandra (80 artiklar publicerade)

Yuvraj är en datavetenskapsstudent vid University of Delhi, Indien. Han brinner för Full Stack Web Development. När han inte skriver undersöker han djupet i olika teknologier.

Mer från Yuvraj Chandra

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera