Een tuple is een verzameling onveranderlijke Python-objecten. Het kan elementen van elk willekeurig gegevenstype (integer, string, float, lijst, etc.) bevatten, wat het een flexibele en krachtige datastructuur maakt. Het maakt deel uit van de Python-kerntaal en wordt veel gebruikt in Python-programma's en -projecten.

Een tupel maken

Een tuple in Python kan worden gemaakt door alle door komma's gescheiden elementen tussen haakjes te plaatsen ().

t1 = (1, 2, 3, 4)
t2 = ("Make", "Use", "Of")
t3 = (1,2, 5,9, 5,4, 9,3)

Elementen van het tupel zijn onveranderlijk en geordend. Het staat dubbele waarden toe en kan een willekeurig aantal elementen bevatten. U kunt zelfs een leeg tupel maken. De elementen van een tuple kunnen van elk gegevenstype zijn (integer, float, strings, tuple, etc.).

Een leeg tupel maken

Een lege tuple kan worden gemaakt door lege haakjes openen en sluiten te gebruiken.

emptyTuple = ()

Een tuple maken met een enkel element

Om een ​​tuple met slechts 1 element te maken, moet u een komma na het element om het door Python als een tuple te laten herkennen.

 # t1 is een tupel
t1 = (3,14,)
print (type (t1))
# afdrukken
 # t2 is geen tupel
t2 = (3,14)
print (type (t2))
# afdrukken

Notitie: type() Functie retourneert het klassetype van het object dat als parameter is doorgegeven.

Door geen komma achter het element te gebruiken, resulteert dit in het klassetype t2 als ‘float’, dus het is verplicht om een ​​komma na het element te gebruiken bij het maken van een tupel met een enkele waarde.

Een tuple maken met verschillende gegevenstypen

Elementen van het tupel kunnen van elk gegevenstype zijn. Deze functie maakt het tupel veelzijdig.

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

Een tupel maken met tuple () Constructor

Tuples kunnen ook worden gemaakt met de tupel () constructeur. Met de constructor tuple () kun je reeksen zoals lijst / woordenboek omzetten in een tupel.

tup1 = tuple ((1, 2, 3))
afdrukken (tup1)
# afdrukken
(1, 2, 3)

Een geneste tupel maken

Tupels kunnen gemakkelijk in de andere tupels worden genest. U kunt de tuple nesten tot elk gewenst niveau.

tup1 = (1, 2, 3)
tup2 = ('Hallo', tup1, 45)
afdrukken (tup2)
# afdrukken
('Hallo', (1, 2, 3), 45)

Toegang tot elementen in een tuple

U hebt toegang tot tuple-elementen met behulp van het indexnummer tussen de vierkante haken. Indexnummer begint bij 0. Tuple ondersteunt ook negatieve indexering:

  • -1: verwijst naar het laatste element
  • -2: verwijst naar het voorlaatste element enzovoort
tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
print (tup1 [0])
print (tup1 [5])
afdrukken (tup1 [-1])
print (tup1 [-9])
# afdrukken
M.
S
F.
M.

Een tupel snijden

U kunt met de dubbele punt toegang krijgen tot een reeks elementen in een tuple : operator. Tuple ondersteunt ook het segmenteren met behulp van negatieve indexen.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
# Drukt elementen af ​​van index 1 (inbegrepen) naar index 6 (exclusief)
afdrukken (tup1 [1: 6])
# Drukt elementen af ​​van start tot index 8 (uitgesloten)
print (tup1 [: 8])
# Drukt elementen van index 3 (inbegrepen) tot het einde af
afdrukken (tup1 [3:])
# Drukt elementen af ​​van index -4 (inbegrepen) naar index -1 (uitgesloten)
afdrukken (tup1 [-4: -1])
# afdrukken
('A', 'K', 'E', 'U', 'S')
('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O')
('E', 'U', 'S', 'E', 'O', 'F')
('S', 'E', 'O')

Controleren of een element in een tuple bestaat

U kunt controleren of een element in een tuple bestaat met behulp van de in trefwoord.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
als 'M' in tup1:
print ("Ja, het element M bestaat in de tuple")
anders:
print ("Element niet gevonden in het tuple !!")
# afdrukken
Ja, het element M bestaat in het tupel

Tuples updaten

Omdat tupels onveranderlijk zijn, is het niet mogelijk om hun waarde te veranderen. Python gooit een TypeError als je probeert de tuple bij te werken.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
tup1 [0] = 'Z'
# De volgende fout wordt gegenereerd
tup1 [0] = 'Z'
TypeError: 'tuple'-object ondersteunt geen itemtoewijzing

Maar er is een hack als u uw tuple wilt bijwerken.

Verander de waarde van elementen van een tuple met behulp van lijsten

U kunt de waarde van elementen in uw tuple wijzigen met lijsten in Python. Eerst moet u de tupel naar een lijst converteren. Pas vervolgens de lijst naar wens aan. Converteer ten slotte de lijst weer naar een tupel.

tup1 = (1, 2, 3)
print ("Dit is het oude Tuple:")
afdrukken (tup1)
temp = lijst (tup1)
temp [0] = 4
tup1 = tuple (temp)
print ("Dit is de bijgewerkte tuple:")
afdrukken (tup1)
# afdrukken
Dit is de oude Tuple:
(1, 2, 3)
Dit is de bijgewerkte tuple:
(4, 2, 3)

Voeg nieuwe elementen toe aan een tuple met behulp van lijsten

Aangezien tupels onveranderlijk zijn, is het niet mogelijk om nieuwe elementen aan een tupel toe te voegen. Python zal een foutmelding geven als:

AttributeError: 'tuple'-object heeft geen' attribuut'-toevoeging

Nogmaals, u kunt onze hack (met behulp van lijsten) gebruiken om hiermee om te gaan. Converteer eerst het tupel naar een lijst. Voeg vervolgens nieuwe elementen toe aan de lijst. Converteer ten slotte de lijst naar een tupel.

Notitie: append () methode wordt gebruikt in Python om een ​​nieuw element aan het einde van de lijst toe te voegen.

tup1 = (1, 2, 3)
print ("Dit is het oude Tuple:")
afdrukken (tup1)
temp = lijst (tup1)
temp.append (4)
tup1 = tuple (temp)
print ("Dit is de bijgewerkte tuple:")
afdrukken (tup1)
# afdrukken
Dit is de oude Tuple:
(1, 2, 3)
Dit is de bijgewerkte tuple:
(1, 2, 3, 4)

Bewerking verwijderen op Tuples

Aangezien tupels onveranderlijk zijn, is het niet mogelijk om enig element uit het tupel te verwijderen. Als u de volledige tuple wilt verwijderen, kunt u dit doen met del trefwoord.

tup1 = (1, 2, 3)
del tup1

Maar je kunt dezelfde hack (met lijsten) gebruiken als voor het wijzigen en toevoegen van tuple-items.

Elementen uit een tuple verwijderen met behulp van lijsten

Elementen kunnen uit het tuple worden verwijderd met behulp van lijsten in 3 eenvoudige stappen:

Stap 1: converteer het tupel naar een lijst.

Stap 2: Verwijder de elementen uit de lijst met de verwijderen() methode

Stap 3: converteer de lijst naar een tupel.

tup1 = (1, 2, 3)
print ("Dit is het oude Tuple:")
afdrukken (tup1)
temp = lijst (tup1)
temp. verwijderen (1)
tup1 = tuple (temp)
print ("Dit is de bijgewerkte tuple:")
afdrukken (tup1)
# afdrukken
Dit is de oude Tuple:
(1, 2, 3)
Dit is de bijgewerkte tuple:
(2, 3)

Tuples inpakken en uitpakken

Bij het aanmaken van een tuple worden waarden toegekend. Dit heet Een Tuple inpakken.

# Voorbeeld van het verpakken van een tupel
tup1 = (1, 2, 3)

Terwijl het extraheren van de waarden in variabelen wordt aangeroepen Een Tuple uitpakken.

# Voorbeeld van het uitpakken van een tupel
tup1 = (1, 2, 3)
(een, twee, drie) = tup1
print (een)
print (twee)
print (drie)
# afdrukken
1
2
3

Looping met Python Tuples

Tuples zijn itereerbare containers, net als lijsten in Python. Je kunt de tupel-elementen gemakkelijk doorlopen.

Gebruiken voor Loop

De for-lus van Python werkt door de elementen van de container te herhalen.

# Looping met for loop
tup1 = (1, 2, 3)
voor element in tup1:
print (element)
# afdrukken
1
2
3

Verwant: Hoe te gebruiken voor lussen in Python

Indexnummers gebruiken

U kunt het tupel doorlopen met behulp van indexen van tupels. Gebruik de len () functie om de grootte van het tupel te vinden.

tup1 = (1, 2, 3)
voor index binnen bereik (len (tup1)):
print (tup1 [index])
# afdrukken
1
2
3

De efficiëntie van uw code verbeteren

Omdat de tuple-gegevensstructuur onveranderlijk is, is het verwerkingssnelheid is sneller dan lijsten. Het biedt dus optimalisatie voor Python-programma's / -projecten. Het gebruik van deze krachtige en veelzijdige datastructuur (tuples) in uw Python-programma's zal uw code-efficiëntie naar een hoger niveau tillen.

E-mail
Python leren? Hier leest u hoe u strings kunt manipuleren

Het gebruik en manipuleren van tekenreeksen in Python kan moeilijk lijken, maar het is bedrieglijk eenvoudig.

Gerelateerde onderwerpen
  • Programmeren
  • Python
Over de auteur
Yuvraj Chandra (2 Artikelen gepubliceerd)

Yuvraj is een student informatica aan de Universiteit van Delhi, India. Hij is gepassioneerd door Full Stack Web Development. Als hij niet aan het schrijven is, onderzoekt hij de diepte van verschillende technologieën.

Meer van Yuvraj Chandra

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Nog een stap…!

Bevestig uw e-mailadres in de e-mail die we u zojuist hebben gestuurd.

.