Listen
Listen ändern
In diesem Kapitel wollen wir weitere Aspekte von Listen behandeln. Im Wesentlichen geht es darum Elemente anzuhängen, einzufügen und zu löschen.
Eine Liste kann man als einen Stapelspeicher (englisch: stack) ansehen. In der Informatik bezeichnet ein Stapelspeicher (oder Stapel) -- manchmal auch Kellerspeicher (Keller) genannt -- eine Datenstruktur mit minimal zwei Operationen: eine, mit der man Daten auf den Stapel legen kann, und eine, um das oberste Element des Stapels wegzunehmen. Stellen Sie sich das wie einen Stapel noch zu lesender Bücher vor. Sie wollen die Bücher des Stapels von oben nach unten durchlesen. Kaufen Sie zwischendurch ein neues Buch, kommt es oben drauf und ist damit das nächste Buch, was gelesen werden "muss".
In den Programmiersprachen werden hierfür meistens die folgenden Operationen zur Verfügung gestellt:
- push
Diese Methode dient dazu ein neues Objekt auf den Stapel zu legen. Je nach Sichtweise wird das Objekt "oben" oder "rechts" angefügt. Im Deutschen gibt es für push eine eher selten benutzte Übersetzung nämlich "einkellern". Python bietet im Gegensatz zu vielen anderen Sprachen keine Methode mit dem Namen "push", aber "append" erfüllt die gleiche Funktionalität. - pop
Diese Methode liefert das oberste Objekt eines Stapels zurück. Dabei wird das Objekt vom Stapel entfernt. Man bezeichnet dies im Deutschen als "auskellern". - peek
Diese Methode dient zum Nachschauen, was zuoberst auf dem Stapel liegt. Dabei wird das Objekt aber nicht wie bei pop entfernt. In Python gibt es keine solche Methode. Bei Listen oder Tupel kann man sie jedoch mit einem Indexzugriff simulieren. Falls "liste" eine Liste ist, dann verhält sich liste[-1] wie eine Methode liste.peek(), die es aber in der list-Klasse nicht gibt.
Da die Pflege und Erweiterung von vier verschiedene Python-Tutorials, - d.h. Python2 in Deutsch und Englisch und auch Python3 in beiden Sprachen, - einen enormen Arbeitsaufwand bedeutet, haben wir beschlossen in Zukunft uns hauptsächlich auf die deutschen und englischen Tutorials für Python3 zu konzentrieren.
Wir empfehlen Ihnen deshalb, dieses Kapitel Listen im Python3 Tutorial weiterzulesen, da es im Wesentlichen kompatibel zu Python 2.6 und Python 2.7 ist.