Python Tutorial
- jetzt Python programmieren lernen

Tupel – und der Unterschied zu Variablen und Listen

Wir haben bereits Variablen und Listen kennen gelernt. Man fragt sich nun natürlich nach dem Unterschied.

Unterschied Variablen und Listen:

  • Variable speichert einen Inhalt
  • Liste speichert VIELE Inhalte (bzw. kann das)

Und was ist ein Tupel. Eigentlich eine Liste aber der wichtige Unterschied ist, dass der Inhalt eines Tupels NICHT änderbar ist. Daher sind Tupel besonders geeignet, um Konstanten zu verkörpern.

Um unsere Auflistung von oben zu komplementieren:

  • Variable speichert einen Inhalt
  • Liste speichert VIELE Inhalte (bzw. kann das)
  • Tupel speichern VIELE Inhalte UNVERÄNDERLICH

Tupel in Python erstellen

Üblicherweise wird ein Tupel durch runde Klammern erstellt:

tupel = ('wert1', 'wert2')

Technisch möglich ist es auch ohne Klammern – aber ersten unüblich und zweitens für den typischen Python-Programmierer irritierend.

tupel = 'wert1', 'wert2'
type(tupel)

Und hat man ein Tupel mit nur einem einzigen Element ist das Komma am Schluss wichtig! Einfach mal folgenden Code testen:

inhaltA = ('wert1',)
inhaltB = ('wert2')
type(inhaltA)
type(inhaltB)

Warum wir überhaupt Tupel nutzen sollen ist anhand der obigen Beispiele wenig einsichtig. Wie gesagt, Tupel sind die Speicherform von unveränderbaren Daten – was man in anderen Programmiersprachen als Konstanten bezeichnet. Solche Daten wäre z.B. Name

personl = ('Elke', 'Maier', '1985')

Zugriff auf Werte in einem Tupel

Der Zugriff und die Möglichkeiten sind gleich wie bei der Liste. Ich kann gezielt auf einen bestimmten Inhalt zugreifen:

tupel = ('wert1', 'wert2', 'wert3', 'wert4', 'wert5')
print (tupel[0])

Über die eckigen Klammern greife ich per Index auf den entsprechenden Wert zu. Auch wie bei Listen startet der Index bei 0!

Ich kann auch mehrere Werte anhand von „von – bis“ auswählen:

tupel = ('wert1', 'wert2', 'wert3', 'wert4', 'wert5')
print (tupel[2:4])

Wir erhalten als Ergebnis:

('wert3', 'wert4')