Mit einer Grafik kann ich nicht aufwarten. Aber folgende Regel habe ich bisher festgestellt (ich bin auch noch ein Beginner ...
):
Bei Range-Angaben wie range(1, 5) gilt: links ist inklusive, rechts ist exklusive. D.h. diese Range geht von inklusive 1 bis inklusive 4 (= exklusive 5).
Also range(1, 5) = [1, 2, 3, 4]
Von links fängt Python bei 0 an zu zählen. D.h. das erste Element in einer Liste oder Tupel ist Element 0. Von Rechts kann man runterzählen indem man das Element -1 als letztes Element anspricht.
Fehlt der linke Index wie in (:5) so wird implizit von Anfang der Struktur gegangen. Also ist (:5) = (0:5).
Fehlt der rechte Index wie in (5: ) so wird bis zum Ende der Struktur gegangen. Also (5: ) = (5:-0). -0 existiert aber nicht, sondern soll hier nur andeuten, daß wir über die Länge der Struktur einen Schritt hinausgehen um der Regel, daß das rechte Element exklusiv ist, gerecht zu werden.
In der folgenden Grafik sind die Indexe von Links den Indexen von Rechts gegenübergestellt:
Code: Alles auswählen
Index des Elements von links: 0 1 2 3 4 5 6 7 8 9 10
Liste = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ]
Index des Elements von rechts: -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
So bedeutet v[:-1]: beginne am Anfang des Tupels und gehe bis zum Ende, exklusive des Elements -1 (das letzte Element im Tupel). Und genau das hast du ja erhalten.
Ich hoffe das hilft...