Python Tupel
Pythons Tupel ähneln Listen, mit der Ausnahme, dass die Elemente eines Tupels nicht geändert werden können.
Tupel verwenden runde Klammern, Listen verwenden eckige Klammern.
Das Erstellen eines Tupels ist einfach: Fügen Sie einfach Elemente in Klammern ein, getrennt durch Kommas.
Wie im folgenden Beispiel:
Beispiele (Python 2.0+)
Ein leeres Tupel erstellen
tup1 = ()
Wenn ein Tupel nur ein Element enthält, müssen Sie nach dem Element ein Komma hinzufügen.
tup1 = (50,)
Tupel ähneln Zeichenketten: Die Indizierung beginnt bei 0, und sie können geschnitten, verkettet usw. werden.
Zugriff auf Tupel
Tupel können Indizes verwenden, um auf Werte im Tupel zuzugreifen, wie im folgenden Beispiel:
Beispiele (Python 2.0+)
Die Ausgabe des obigen Beispiels ist:
tup1[0]: physics tup2[1:5]: (2, 3, 4, 5)
Tupel ändern
Die Elementwerte in einem Tupel dürfen nicht geändert werden, aber wir können Tupel verketten und kombinieren, wie im folgenden Beispiel:
Beispiele (Python 2.0+)
Die Ausgabe des obigen Beispiels ist:
(12, 34.56, 'abc', 'xyz')
Tupel löschen
Die Elementwerte in einem Tupel dürfen nicht gelöscht werden, aber wir können die del-Anweisung verwenden, um das gesamte Tupel zu löschen, wie im folgenden Beispiel:
Beispiele (Python 2.0+)
Nachdem das Tupel im obigen Beispiel gelöscht wurde, führt die Ausgabe der Variable zu einer Ausnahmemeldung, wie unten gezeigt:
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print tup
NameError: name 'tup' is not defined
Tupel-Operatoren
Wie bei Strings können Tupel mit den Operatoren + und * bearbeitet werden. Das bedeutet, sie können kombiniert und kopiert werden, und die Operation erzeugt ein neues Tupel.
| Python-Ausdruck | Ergebnis | Beschreibung |
|---|---|---|
| len((1, 2, 3)) | 3 | Anzahl der Elemente zählen |
| (1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | Verkettung |
| ('Hi!',) * 4 | ('Hi!', 'Hi!', 'Hi!', 'Hi!') | Replikation |
| 3 in (1, 2, 3) | True | Ob ein Element existiert |
| for x in (1, 2, 3): print x, | 1 2 3 | Iteration |
Tupel-Indizierung und Slicing
Da ein Tupel ebenfalls eine Sequenz ist, können wir auf Elemente an bestimmten Positionen im Tupel zugreifen, und wir können auch einen Abschnitt von Elementen im Index slicen, wie unten gezeigt:
Tupel:
L = ('spam', 'Spam', 'SPAM!')
| Python-Ausdruck | Ergebnis | Beschreibung |
|---|---|---|
| L[2] | 'SPAM!' | Das dritte Element lesen |
| L[-2] | 'Spam' | Rückwärts lesen, das vorletzte Element lesen |
| L[1:] | ('Spam', 'SPAM!') | Elemente slicen |
Kein schließendes Begrenzungszeichen
Beliebige Objekte ohne umschließende Begrenzungszeichen, durch Kommas getrennt, ergeben standardmäßig ein Tupel, wie im folgenden Beispiel:
Beispiele (Python 2.0+)
Das Ergebnis der Ausführung des obigen Beispiels ist:
abc -4.24e+93 (18+6.6j) xyz Value of x , y : 1 2
Integrierte Funktionen für Tupel
Python-Tupel enthalten die folgenden integrierten Funktionen:
| Nein. | Methode und Beschreibung |
|---|---|
| 1 | cmp(tuple1, tuple2) Vergleicht zwei Tupel-Elemente. |
| 2 | len(tuple) Zählt die Anzahl der Elemente in einem Tupel. |
| 3 | max(tuple) Gibt den maximalen Wert der Elemente in einem Tupel zurück. |
| 4 | min(tuple) Gibt den minimalen Wert der Elemente in einem Tupel zurück. |
| 5 | tuple(seq) Konvertiert eine Liste in ein Tupel. |