Python - Tupel: Ein Anfänger-Leitfaden

Hallo da, zukünftige Python-Enthusiasten! Heute werden wir auf eine aufregende Reise in die Welt der Python-Tupel gehen. Keine Sorge, wenn du noch nie programmiert hast – ich werde hier bei dir sein, alles Schritt für Schritt zu erklären. Also, nimm dir einen Tasse Kaffee (oder Tee, wenn das dein Ding ist) und lasst uns einsteigen!

Python - Tuples

Was ist eine Tupel?

Bevor wir beginnen, lassen Sie uns verstehen, was eine Tupel ist. Stell dir eine Tupel als einen Behälter vor, der mehrere Elemente aufnehmen kann, ähnlich wie eine Schachtel mit gemischten Schokoladen. Der Knick? Sobald du deine Schokoladen (oder Daten) in diese Schachtel gepackt hast, kannst du sie nicht mehr ändern!

So erstellen wir eine Tupel:

meine_erste_tupel = (1, 2, 3, 'hallo', 'welt')
print(meine_erste_tupel)

Wenn du diesen Code ausführst, wirst du sehen:

(1, 2, 3, 'hallo', 'welt')

Siehst du, wie einfach das war? Wir haben gerade unsere erste Tupel erstellt!

Zugriff auf Werte in Tupels

Jetzt, wo wir unsere Tupel haben, lernen wir, wie man auf die Elemente drinnen zugreift. Dies tun wir mit etwas, das eine "Index" genannt wird. Stell dir einen Index als die Positionszahl eines Elements in der Tupel vor, beginnend mit 0.

meine_tupel = ('apfel', 'banane', 'kirsche', 'datum')
print(meine_tupel[0])  # Dies wird 'apfel' ausgeben
print(meine_tupel[2])  # Dies wird 'kirsche' ausgeben

Ausgabe:

apfel
kirsche

Denke daran, in Python (und vielen anderen Programmiersprachen) beginnen wir mit dem Zählen von 0, nicht 1. Es ist wie ein seltsames Spiel von Verstecken, bei dem "0" ruft "Bereit oder nicht, hier komme ich!"

Aktualisierung von Tupels

Erinnere dich, wie ich sagte, dass Tupels wie Schachteln von Schokoladen sind, die man nicht mehr ändern kann, sobald sie gepackt sind? Na, ich war nicht spöttisch! Tupels sind unveränderlich, was bedeutet, dass du die Inhalte nach der Erstellung nicht ändern kannst.

meine_tupel = ('apfel', 'banane', 'kirsche')
meine_tupel[0] = 'birne'  # Dies wird eine Fehlermeldung auslösen!

Wenn du versuchst, diesen Code auszuführen, wird Python einen Tantrum (oder einen Fehler) werfen, weil du versuchst, etwas zu ändern, das nicht geändert werden kann.

Aber warte! Es gibt eine Umgehung. Du kannst die Tupel in eine Liste umwandeln, Änderungen vornehmen und sie dann wieder in eine Tupel umwandeln:

meine_tupel = ('apfel', 'banane', 'kirsche')
meine_liste = list(meine_tupel)
meine_liste[0] = 'birne'
meine_neue_tupel = tuple(meine_liste)
print(meine_neue_tupel)

Ausgabe:

('birne', 'banane', 'kirsche')

Ist das nicht wie Magie? Wir haben quasi eine neue Tupel mit den gewünschten Änderungen erstellt.

Löschen von Tupel-Elementen

Genau wie wir keine einzelnen Elemente aktualisieren können, können wir auch keine einzelnen Elemente aus einer Tupel löschen. Allerdings können wir die gesamte Tupel löschen:

meine_tupel = ('apfel', 'banane', 'kirsche')
del meine_tupel
print(meine_tupel)  # Dies wird eine Fehlermeldung auslösen, weil meine_tupel nicht mehr existiert

Das ist, als würde man die ganze Schachtel von Schokoladen wegwerfen, anstatt nur diejenigen auszuwählen, die du nicht magst!

Python Tupel-Operationen

Tupels unterstützen mehrere Operationen. Lassen Sie uns einige davon ansehen:

Verknüpfung

Wir können zwei Tupels mit dem '+'-Operator zusammenfügen:

tupel1 = (1, 2, 3)
tupel2 = ('a', 'b', 'c')
tupel3 = tupel1 + tupel2
print(tupel3)

Ausgabe:

(1, 2, 3, 'a', 'b', 'c')

Wiederholung

Wir können eine Tupel mit dem '*'-Operator wiederholen:

meine_tupel = ('Python',) * 3
print(meine_tupel)

Ausgabe:

('Python', 'Python', 'Python')

Mitgliedschaft

Wir können überprüfen, ob ein Element in der Tupel existiert, indem wir das 'in'-Schlüsselwort verwenden:

meine_tupel = ('apfel', 'banane', 'kirsche')
print('banane' in meine_tupel)
print('traube' in meine_tupel)

Ausgabe:

True
False

Indizierung, Schneiden und Matrizen

Tupels unterstützen Indizierung und Schneiden, genau wie Listen. Lassen Sie uns einige Beispiele sehen:

meine_tupel = ('p', 'y', 't', 'h', 'o', 'n')
print(meine_tupel[1:4])  # Schneiden
print(meine_tupel[::-1])  # Tupel umdrehen

Ausgabe:

('y', 't', 'h')
('n', 'o', 'h', 't', 'y', 'p')

Keine umschließenden Delimiter

Hier ist ein lustiger Fakt: In Python kannst du Tupels ohne Klammern erstellen! Dies wird "Tupel-Packing" genannt:

meine_tupel = 1, 2, 3, 'hallo'
print(meine_tupel)
print(type(meine_tupel))

Ausgabe:

(1, 2, 3, 'hallo')
<class 'tuple'>

Auch ohne die Klammern erkennt Python das als eine Tupel!

Eingebaute Funktionen mit Tupels

Python bietet mehrere eingebaute Funktionen, die mit Tupels arbeiten. Lassen Sie uns einige davon ansehen:

Funktion Beschreibung Beispiel
len() Gibt die Länge der Tupel zurück len((1, 2, 3)) gibt 3 zurück
max() Gibt das größte Element in der Tupel zurück max((1, 5, 3)) gibt 5 zurück
min() Gibt das kleinste Element in der Tupel zurück min((1, 5, 3)) gibt 1 zurück
sum() Gibt die Summe aller Zahlen in der Tupel zurück sum((1, 2, 3)) gibt 6 zurück
sorted() Gibt eine neue sortierte Liste aus der Tupel zurück sorted((3, 1, 2)) gibt [1, 2, 3] zurück

Hier ist ein Beispiel mit diesen Funktionen:

meine_tupel = (3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5)
print("Länge:", len(meine_tupel))
print("Maximal:", max(meine_tupel))
print("Minimal:", min(meine_tupel))
print("Summe:", sum(meine_tupel))
print("Sortiert:", sorted(meine_tupel))

Ausgabe:

Länge: 11
Maximal: 9
Minimal: 1
Summe: 44
Sortiert: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

Und da hast du es! Du hast gerade deinen Crashkurs über Python-Tupels abgeschlossen. Denke daran, Übung macht den Meister, also mach nicht bang, diese Konzepte zu experimentieren. Wer weiß? Du könntest dich just tupeln deinen Weg zu einem Python-Meister! Happy coding!

Credits: Image by storyset