CodeGym /Kurse /Python SELF DE /Erweiterte Arbeit mit Tupeln

Erweiterte Arbeit mit Tupeln

Python SELF DE
Level 8 , Lektion 6
Verfügbar

15.1 Erstellen einer Kopie eines Tupels

Also, wir wissen bereits, dass Tupel (tuples) unveränderliche Sequenzen von Elementen sind. Wegen dieser Unveränderlichkeit mag das Erstellen einer Kopie eines Tupels als eine unbedeutende Aufgabe erscheinen, da sich Tupel, im Gegensatz zu Listen, nach der Erstellung nicht ändern.

Dennoch kann es in manchen Fällen notwendig sein, eine Kopie eines Tupels zu erstellen, insbesondere wenn es wichtig ist, mit einer separaten Version zu arbeiten, ohne die ursprünglichen Daten zu verändern. Hier sind die Hauptmethoden:

Direkte Zuweisung

Der einfachste Weg, eine Kopie eines Tupels zu erstellen, ist die direkte Zuweisung. Dies wird ein neues Tupel-Objekt erstellen, aber da Tupel unveränderlich sind, werden beide Objekte auf dieselben Daten verweisen.


original_tuple = (1, 2, 3, 4, 5)
copied_tuple = original_tuple
print(copied_tuple)
        

In diesem Fall wird copied_tuple auf dasselbe Objekt verweisen wie original_tuple.

Verwendung der Funktion tuple()

Eine andere Methode, um eine Kopie eines Tupels zu erstellen, ist die Verwendung der eingebauten Funktion tuple(). Diese Funktion erstellt ein neues Tupel, indem sie die Elemente des ursprünglichen Tupels kopiert.


original_tuple = (1, 2, 3, 4, 5)
copied_tuple = tuple(original_tuple)
print(copied_tuple)

        

Diese Methode ist besonders nützlich, wenn du sicherstellen möchtest, dass du ein neues Objekt erstellst, selbst wenn das ursprüngliche Objekt ein anderer iterierbarer Datentyp ist.

Umwandlung über eine Liste

Manchmal kann es erforderlich sein, eine veränderliche Kopie eines Tupels in Form einer Liste zu erstellen, um Änderungen vorzunehmen und es dann wieder in ein Tupel umzuwandeln.


original_tuple = (1, 2, 3, 4, 5)

temp_list = list(original_tuple)
temp_list.append(6)
copied_tuple = tuple(temp_list)
            
print(copied_tuple)

        

In diesem Beispiel wandeln wir das Tupel zuerst in eine Liste um, fügen ein neues Element hinzu und wandeln die Liste dann wieder in ein Tupel um.

15.2 Verbinden von Tupeln

Im Gegensatz zu Listen können Tupel nach der Erstellung nicht verändert werden, aber du kannst neue Tupel erstellen, indem du bestehende verbindest. Das Verbinden von Tupeln ist eine gängige Operation, die in verschiedenen Programmierungszenarien nützlich sein kann.

Die Hauptmethoden zum Verbinden von Tupeln

Konkatenation

Der einfachste Weg, zwei oder mehr Tupel zu verbinden, ist die Verwendung des Operators +. Diese Methode erstellt ein neues Tupel als Ergebnis der Verkettung der ursprünglichen Tupel.


tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
combined_tuple = tuple1 + tuple2
            
print(combined_tuple)
        

In diesem Beispiel wird combined_tuple die Elemente (1, 2, 3, 4, 5, 6) enthalten.

Multiplikation mit einer Ganzzahl

Du kannst auch den Operator * verwenden, um ein Tupel mit einer Ganzzahl zu multiplizieren. Dies wiederholt das Tupel eine bestimmte Anzahl von Malen und erstellt ein neues Tupel.


tuple1 = (1, 2, 3)
multiplied_tuple = tuple1 * 3
            
print(multiplied_tuple)
        

Hier wird multiplied_tuple die Elemente (1, 2, 3, 1, 2, 3, 1, 2, 3) enthalten.

Funktion itertools.chain

Um eine große Anzahl von Tupeln zu verbinden, kannst du die Funktion chain aus dem Modul itertools verwenden. Dies ist praktisch, wenn die Anzahl der zu verbindenden Tupel im Voraus nicht bekannt ist.


from itertools import chain

tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
tuple3 = (7, 8, 9)
            
combined_tuple = tuple(chain(tuple1, tuple2, tuple3))
print(combined_tuple)
        

Das Ergebnis wird (1, 2, 3, 4, 5, 6, 7, 8, 9) sein.

15.3 Verschachtelte Tupel

Tupel, die andere Tupel enthalten, werden verschachtelte Tupel (nested tuples) genannt. Verschachtelte Tupel bieten eine bequeme Möglichkeit, Daten zu organisieren und zu strukturieren, insbesondere wenn mehrdimensionale Daten oder komplexe Strukturen dargestellt werden müssen.

Du kannst Tupel kombinieren, indem du verschachtelte Strukturen erstellst. Dies ist nützlich, um Daten in mehrdimensionale Strukturen zu organisieren. Das Erstellen eines verschachtelten Tupels in Python ist genauso einfach wie das Erstellen eines normalen Tupels. Du fügst einfach ein Tupel in ein anderes ein.


nested_tuple = ((1, 2, 3), (4, 5, 6), (7, 8, 9))
        

In diesem Beispiel enthält nested_tuple drei Tupel, von denen jedes aus drei Elementen besteht.

Beispiel für die Erstellung eines verschachtelten Tupels aus normalen:

In diesem Beispiel enthält nested_tuple drei Tupel, von denen jedes aus drei Elementen besteht.


tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
nested_tuple = (tuple1, tuple2)
            
print(nested_tuple)
        

Hier wird nested_tuple ((1, 2, 3), (4, 5, 6)) enthalten.

Zugriff auf Elemente eines verschachtelten Tupels

Der Zugriff auf Elemente eines verschachtelten Tupels erfolgt durch mehrfache Indizierung. Zuerst gibst du den Index für das äußere Tupel an, dann für das innere.


nested_tuple = ((1, 2, 3), (4, 5, 6), (7, 8, 9))

# Zugriff auf das Element 5 im zweiten verschachtelten Tupel
element = nested_tuple[1][1]
print(element)  # Ausgabe: 5
        

Mehrdimensionale Arrays

Verschachtelte Tupel werden häufig verwendet, um zweidimensionale oder mehrdimensionale Arrays darzustellen. Zum Beispiel kann eine Datentabelle als Tupel von Tupeln dargestellt werden, wobei jede Zeile der Tabelle ein separates Tupel ist.

Datenstrukturierung

Verschachtelte Tupel sind praktisch zur Strukturierung von Daten, wie geographische Koordinaten (Breitengrad und Längengrad) für mehrere Standorte:


locations = (("New York", (40.7128, -74.0060)), 
             ("Los Angeles", (34.0522, -118.2437)), 
             ("Chicago", (41.8781, -87.6298)))
        
1
Umfrage/Quiz
Tuples in Python, Level 8, Lektion 6
Nicht verfügbar
Tuples in Python
Tuples in Python
Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION