Mit Hilfe von Variablen lassen sich Werte speichern und benennen. Wir können also später diese Werte wieder lesen.
Speicherplatz
Gespeicherte Werte brauchen Platz im Speicher. Wir können uns einen solchen Speicherplatz als leere Box vorstellen:
Werte
Als Werte kommen Zahlen, Text oder andere Dinge in Frage. In unserer Box-Analogie ist der Wert etwas das in die Box reinpasst.
Einen Text-Wert haben wir bereits in unseren «Hello World»-Programm verwendet, nämlich das "Hello World"
im print-Befehl.
print("Hello World")
Wir haben den Wert aber nicht abgespeichert, sondern direkt dem print
-Befehl übergeben.
Variablennamen
Wenn wir etwas in einer Box verstauen, dann wollen wir sicher sein, dass wir diesen Inhalt auch wieder finden. Deshalb beschriften wir die Box:
Wir haben jetzt also einen beschrifteten Speicherplatz, eine sogenannte Variable. Darin können wir Werte abspeichern um später wieder darauf zuzugreifen.
Tipp: Variablennamen
Der Name einer Variablen sollte wie folgt gewählt werden:
- aussagekräftig (was speichert die Variable ab?)
- nur Kleinbuchstaben, keine Leerzeichen, ev. Wörter mit underscore trennen – sogenannte snake_case-Schreibweise
Einige Dinge sind sogar verboten:
- Man darf kein reserviertes Schlüsselwort als Namen nehmen
- Der Name darf keine Leerzeichen und Sonderzeichen beinhalten
- Der Name muss mit einem Buchstaben beginnen
Aufgabe: Variablennamen
Welche der folgenden Variablen-Namen sind korrekt? Welche missachten die Konventionen?
c12
007_geheim
geheim_007
geheimAgent
agent geheim
GEHEIM_AGENT
print
asdf_12
Zusatzaufgabe: snake_case
Unsere Variable soll einen rotes Auto abspeichern. Wir wollen also Auto rot
als Variablennamen wählen.
Schreibe diesen Namen in den folgenden Schreibweisen:
snake_case
,camelCase
undkebap-case
.Welche der Schreibweisen ist/sind in Python erlaubt? Welche ist wohl die Beste?
Wo werden die anderen Schreibweisen verwendet? (Internetrecherche)
Zuweisung
Werte können in einer Variablen abgespeichert werden. Wir sprechen von einer Zuweisung:
- Als Zuweisungs-Operator dient in Python das Gleichheitszeichen.
- Links vom Gleichheitszeichen steht immer ein Variablennamen.
- Rechts vom Gleichheitszeichen steht ein Wert oder ein Ausdruck der ausgewertet werden kann
nachricht = "Hello World"
nachricht
- Name der Variablen
- steht links vom Zuweisungsoperator
"Hello World"
- abzuspeichernder Wert
- steht rechts vom Zuweisungsoperator
Aufgabe
Was wird beim folgenden Programm ausgegeben?
Zuerst überlegen, dann ausprobieren!
hallo = "text"
text = "hallo"
print(hallo)
print("hallo")
Lösung
Das Programm gibt «text» und «hallo» auf zwei Zeilen aus:
- Zeile 4
- der Wert der Variablen
hallo
wird ausgegeben, also «text» - Zeile 5
- der Wert «hallo» wird ausgegeben
Die Variable text
wird zwar definiert und hat den Wert «hallo», wird aber nie verwendet.
Variableninhalt
Auf den Inhalt einer Variablen kann man später wieder zugreifen. Wenn wir nur den Namen der Variablen schreiben, so ersetzt Python diesen mit dem darin abgespeicherten Wert:
nachricht = "Hello World"
print(nachricht)
Auf Zeile 2 wird auf den Inhalt der Varialben nachricht
zugegriffen.
Aufgabe: Variablen-Bereich
- aktiviere den Variablen-Bereich von Thonny über View 👉 Variables
- kopiere den obenstehenden Code in Thonny rüber
- starte das Programm
- was steht im Variablen-Bereich
Werte einlesen
Mit dem input
-Befehl können wir Eingaben vom Benutzer entgegennehmen:
name = input("Wie heisst du?")
print("Hallo", name)
Dem print
-Befehl kann man mehrere durch Komma getrennte Argumente übergeben. Er gibt sie dann alle auf derselben Zeile mit Leerschlag getrennt aus.
Wert ersetzen
Eine Variable kann immer nur einen Wert speichern. Wir können aber eine Variable wiederverwenden und einen gespeicherten Wert überschreiben:
nachricht = "Hello World"
nachricht = "Hallo Welt"
print(nachricht)
Aufgabe: Debug-Mode
- aktiviere den Variablen-Bereich von Thonny über View 👉 Variables
- kopiere den obenstehenden Code in Thonny rüber und speichere die Datei
- starte das Programm im Debug-Modus
- Klicke dich Schritt-für-Schritt durch das Skript durch
- beobachte dabei in welchem Schritt die Variable überschrieben wird
Wert ändern
Wir können einen Wert auch verändern: Das heisst wir nehmen den alten Wert und berechnen etwas neues damit, das dann den alten Wert ersetzt:
x = 7
x = x + 12
print(x)
Auf Zeile 2 berechnet Python zuerst den Teil rechts des Zuweisungsoperators, also x + 12
. Da x
auf der Zeile 1 den Wert 7
erhalten hat, setzt Python für x
die 7
ein und berechnet somit einen neuen Wert, und zwar 19
. Dieser neue Wert wird mit dem Zuweisungsoperator in der Variablen x
abgespeichert und überschreibt somit deren ursprünglichen Wert.
Aufgabe: Debug-Mode
- kopiere den obenstehenden Code in Thonny rüber und speichere die Datei
- starte das Programm im Debug-Modus
- klicke dich Schritt-für-Schritt durch das Skript durch
- beobachte genau was auf Zeile 2 passiert
Illustrationen: Designed by macrovector / Freepik