Änderung an Ort und Stelle
In plate steht vorn tea, dahinter water. plate[0] = "soup" setzt soup auf Platz 0, tea ist dort weg. water bleibt auf Platz 1. Es sind weiter zwei Werte. Am Ende kommt nichts dazu, und es fällt auch nichts weg.
print schreibt die Werte in ihrer Reihenfolge, die eckigen Klammern mit. soup steht vorn, weil genau Platz 0 ersetzt wurde. len(plate) bleibt 2. Das erste Programm schreibt Platz 1 nicht auf eine eigene Zeile. Die Listenzeile zeigt water schon dort.
plate = ["tea", "water"]
plate[0] = "soup"
print(plate)
print(len(plate))
Auf dem Bildschirm steht soup, dann water, dann die Zahl 2. Platz 1 hat sich nicht verschoben. tea ist nicht mehr in plate.
same = plate gibt der Liste, die du schon hast, einen zweiten Namen. Eine zweite Liste entsteht nicht. plate[1] = "soup" ersetzt water, Platz 0 bleibt tea. Unter dem Namen same steht auf Platz 1 ebenfalls soup. same[1] ist also soup, auch wenn das Programm die ganze Liste schreibt und nicht diesen Platz allein.
plate = ["tea", "water"]
same = plate
plate[1] = "soup"
print(plate)
print(same)
Beide Zeilen zeigen tea, dann soup. water ist unter beiden Namen weg. Eine Ersetzung, eine Liste. Eine eigene Kopie hast du auf dieser Seite nicht angelegt.
Solange plate nur tea und water hält, stoppt plate[2] = "bread" das Programm. Platz 2 gibt es noch nicht. Eine Ersetzung öffnet keinen neuen Platz am Ende. Diese Zeile steht nicht in den Programmen oben.
plate = ["soup", "water"] ist ein anderer Schritt. Dabei entsteht eine neue Liste. Die bisherige bleibt, wie sie war, für jeden Namen, der noch auf sie zeigt. Diese Seite ersetzt einen Wert in der Liste, die du schon hast.
Die nächste Seite legt eine eigene Kopie an, damit eine spätere Änderung unter einem Namen beim anderen ausbleibt. Hier sind zwei Namen eine Liste, und du ersetzt nur einen Wert, der schon darin steht.
Die zwei Bildschirme
- Was schreibt das erste Programm, die Liste und dann die Zahl?
- Was steht nach diesem Programm auf Platz 1?
- Was schreiben beide print-Zeilen im zweiten Programm?
- Warum stoppt plate[2] = "bread", wenn plate nur tea und water hält?
Die Länge bleibt 2
Im ersten Programm nimmt soup den Platz von tea ein und die Länge bleibt 2, also soup, dann water, dann 2. water steht weiter auf Platz 1. Im zweiten Programm zeigen beide Namen tea, dann soup, weil same und plate eine Liste sind und Platz 0 tea geblieben ist. plate[2] = "bread" stoppt: den Platz gibt es nicht, und diese Ersetzung fügt keinen hinzu.
🧠 Testen Sie Ihr Wissen
Testen Sie Ihr Wissen
Fordern Sie sich mit diesem interaktiven Quiz heraus und sehen Sie, wie gut Sie das Thema verstehen
📝 Anweisungen
- Lesen Sie jede Frage sorgfältig
- Wählen Sie die beste Antwort für jede Frage
- Sie können das Quiz so oft wiederholen, wie Sie möchten
- Ihr Fortschritt wird oben angezeigt