0%

Werte und Variablen · Übung

Variablen können sich ändern

Ein Variablenname kann später im Programm auf einen anderen Wert verweisen. Weil sich dieser Wert ändern kann, sprechen wir von einer Variablen.

Führe dieses Beispiel aus:

Try it

Derselben Variablen wird zweimal ein Wert zugewiesen. Die zweite Zuweisung ersetzt den Wert, der aktuell mit status verbunden ist.

Python gibt beide Wörter aus, weil die erste Ausgabeanweisung vor der Wertänderung ausgeführt wird:

waiting
ready

Folge dem Programm Zeile für Zeile

Stell dir vor, Python notiert den aktuellen Wert von status auf einem kleinen Zettel:

Nach dieser ZeileAktueller Wert von status
status = "waiting""waiting"
print(status)weiterhin "waiting"
status = "ready""ready"
print(status)weiterhin "ready"

Mit Step kannst du diese Tabelle im tatsächlichen Programm beobachten. Gehe im Übungseditor Anweisung für Anweisung vorwärts und behalte status im Bereich Locals im Blick. Der Wert ändert sich nur, wenn Python eine Zuweisung ausführt. Die Ausgabe ändert sich nur bei einer Ausgabeanweisung. Gehe ein- oder zweimal zurück, um zu sehen, wie beide Zustände zu einem früheren Zeitpunkt zurückkehren.

Die Variable führt nicht automatisch eine Historie ihrer alten Werte. Sie verweist auf den zuletzt zugewiesenen Wert.

Auch deshalb ist es wichtig, Code von oben nach unten zu lesen. Der Wert einer Variablen hängt davon ab, welche Zuweisungen Python bereits ausgeführt hat.

Was gibt dieses Programm aus?

score = 5
print(score)
score = 8
print(score)

Eine Zuweisung ist eine Aktion

In der Mathematik beschreibt ein Gleichheitszeichen eine Gleichheit. Bei einer Python-Zuweisung führt es eine Aktion aus.

color = "blue"
color = "green"

Python behauptet nicht, dass Blau und Grün gleich sind. Es weist zuerst einen Wert zu und dann einen anderen.

Später lernst du, wie Python prüft, ob zwei Werte gleich sind. Dafür verwendet es zwei Gleichheitszeichen: ==. Merke dir fürs Erste: Ein einzelnes Gleichheitszeichen weist einen Wert zu.

Füge eine weitere Änderung hinzu

Das Startprogramm gibt zwei Zustände aus:

waiting
still waiting

Ergänze unter dem vorhandenen Code:

  1. Weise status den String "ready" zu.

  2. Gib status erneut aus.

Die vollständige Ausgabe muss so aussehen:

waiting
still waiting
ready

Verwende für alle drei Zustände dieselbe Variable. Erstelle keine Variable status2 und gib das Wort ready nicht direkt aus.

Wenn in der letzten Zeile noch still waiting steht, prüfe, ob die neue Zuweisung vor der letzten Ausgabeanweisung steht.

Aufgabe

Ergänze das Startprogramm um einen dritten Zustand. Weise der vorhandenen Variablen status den Wert "ready" zu und gib status dann erneut aus.

Die vollständige Ausgabe muss so aussehen:

waiting
still waiting
ready

Klicke nach dem Ergänzen des dritten Zustands auf Step in der Werkzeugleiste des Editors. Beobachte im Bereich Locals, wie sich status von "waiting" über "still waiting" zu "ready" ändert und jede Ausgabezeile im passenden Moment erscheint.