Drücken Sie „Enter“, um den Inhalte zu überspringen

Python | Variablen

Variablen

Eine wichtige Eigenschaft von Programmiersprachen ist, dass sich Zeichen und Zahlenwerte, Ergebnisse von Berechnungen oder Vergleichen und komplexe Strukturen und Klassen im Hauptspeicher des Computers merken lassen. So können wir auf diese Daten später im Programmablauf noch einmal zugreifen. Ein Programm würde unglaublich langsam arbeiten, wenn es ständig die selben Berechnungen mit den selben Werten immer und immer wieder durchführen, oder einzelne Daten immer wieder von der Festplatte laden müsste. In unserem ersten Beispiel haben wir Variablen sogar bereits kennengelernt. Wir erinnern uns:

Thonny IDE

Hier wurde der Wert der Benutzereingabe, nämlich dein Name, in der Variablen text gespeichert. Technisch gesehen hat der Python Interpreter hier im Hauptspeicher des Computers einen Speicherbereich reserviert, in dem eine Zeichenkette gespeichert und der im Programm nun mit dem Namen text angesprochen wird. Den Inhalt der Variablen text können wir nun immer wieder, solange das Programm läuft, aufrufen. Dazu ein Beispiel:

# Ein Beispiel mit Zeichenketten
text = "Hallo" 
print (text) 
print (text) 
print (text)

Variablen können aber auch das Ergebnis von Berechnungen speichern:

# Eine einfache Addition
addition = 5 + 4 
print (addition) 
print (addition)

Anstatt also bei dem Befehl print jedesmal die Zahlen 5 und 4 erneut miteinander zu addieren, verwenden wir das fertige Ergebnis, welches in der Variablen addition zuvor gespeichert wurde.

Merke: Variablennamen sollten immer so gewählt werden, dass man vom Namen darauf schließen kann, wofür die Variable verwendet wird.

Namen, wie a, abcd oder ttt sind zwar grundsätzlich möglich, erschweren aber das Lesen eines Programmcodes; insbesondere, wenn man sich nach längerer Zeit wieder mit diesem Programmcode beschäftigt. Wird die Variable beispielsweise häufiger im Programm verwendet, muss man mühsam nachschauen, was denn eigentlich mit der Variablen gemeint war. Der Name sollte aber auch nicht zu lang sein, denn das kostet viel Tipparbeit. Falls möglich kann hier mit Abkürzungen gearbeitet werden.

Variablen sind immer genau einem Datentyp zugewiesen. Das geschieht automatisch, wenn unmittelbar eine Wertzuweisung erfolgt, wie wir es in den Beispielen gerade dargestellt haben. Im ersten Beispiel erkennt der Interpreter sofort, dass text eine Zeichenkette speichern soll. Im zweiten Beispiel werden zwei Ganzzahlen miteinander addiert. Der Interpreter speichert das Ergebnis ebenfalls als Ganzzahl ab. Das können wir mit dem zuvor gelernten Befehl type leicht überprüfen. Lege dazu in Thonny eine neue Datei an und gib in den Editor folgenden Programmcode ein:

# eine Zeichenkette 
text = "Hallo"
print(type(text))

# Addition zweier Ganzzahlen
addition = 5 + 4
print(type(addition))

Speichere das Programm unter prog002.py ab und führe es aus. Du solltest nun das folgende Ergebnis sehen:

Variablen

Stimmt.

Mit Variablen können wir auch rechnen:

# Rechnen mit Variablen
one = 1
two = 2
print(one + two)

Variablen sind, wie der Name schon sagt, veränderlich. Im Programmablauf können wir eine Wertzuweisung ändern und der Variablen einen neuen Wert zuweisen. Das gilt aber nur, solange der Datentyp dabei gleich bleibt. Wenn wir zuvor in einer Variablen eine Zeichenkette gespeichert hatten, können wir anschließend der Variablen keine Zahl zuweisen und umgekehrt.

# Guthaben auf dem Bankkonto: 212,50 Euro
balance = 212.50
# Einzahlung: 20 Euro
balance = balance + 20
# Kontostand ausgeben
print(balance)

Zunächst haben wir unser Guthaben mit 212,50 Euro festgelegt. Im zweiten Schritt haben wir den Wert um 20 Euroerhöht und das Ergebnis wieder in der Guthaben-Variablen gespeichert. Dies nennen wir eine Wertzuweisung. Wir werden diese Wertzuweisungen beim Programmieren immer wieder benötigen. Und wir haben in diesem Zusammenhang einen weiteren Operator kennengelernt: den Zuweisungsoperator (=). Bei Wertzuweisungen gilt immer: Die Auswertung des rechten Teils nach dem Zuweisungsoperator wird der Variablen (links) zugewiesen. Wir sagen dazu:

balance sei 212,50
balance sei balance + 20

Da immer erst der rechte Teil ausgewertet wird, hat die Variable balance zunächst den zuvor zugewiesenen Wert 212,50. Diesem Wert addieren wir 20 hinzu. Erst danach wird das Ergebnis dieser Addition wieder der Variablen balance zugewiesen. Von diesem Moment an hat die Variable dann den Wert 232,50.

Hinweis: Bei Dezimalzahlen wird bei der Programmierung die englische Schreibweise verwendet. Statt des , wird hier zur Trennung der Dezimalstellen der . verwendet!

Hinweis: Die Zuweisung einer Ganzzahl (int) zu einer Dezimalzahl-Variablen (float) ist möglich, weil die ganzen Zahlen Bestandteil des Zahlenraums der Dezimalzahlen sind. Wir können die Zahl 20 auch als 20.0 schreiben. Der umgekehrte Weg ist nicht möglich, da hier die Dezimalstellen abgeschnitten werden müssten!

Zur der Wahl der Variablennamen muss noch erwähnt werden, dass nur Buchstaben als erstes Zeichen erlaubt sind; keine Ziffern und auch keine Sonderzeichen. Sonderzeichen, bis auf den Unterstrich _, sind ohnehin an keiner Stelle als Variablennamen erlaubt.

vorname erlaubt
schauspieler_vorname erlaubt
ScHaUsPiElEr_NACHNAME erlaubt
123 nicht erlaubt
$name nicht erlaubt

Hinweis: In der Programmiersprache wird streng nach Groß-/Kleinschreibung unterschieden! Die Variablen schauspieler, SCHAUSPIELER, Schauspieler und ScHaUsPiElEr sind alle unterschiedlich. Sie könnten (theoretisch) alle gleichzeitig in einem Programmcode vorkommen und jeweils unterschiedliche Werte besitzen.

Im Allgemeinen werden nie Variablen mit gleichem Bezeichner, nur jeweils mit unterschiedlicher Schreibweise, verwendet. Dies würde den Code schwer lesbar, fehleranfällig und missverständlich werden lassen. Die Gefahr, zwei Variablen miteinander zu verwechseln wäre viel zu groß. Daher haben sich mit der Zeit Regeln für die Benennung von Variablen und anderen Teilen des Quellendes durchgesetzt.

Wir wollen im Folgenden Variablen stets mit kleinem Buchstaben beginnen lassen. Sollte der Variablenname aus mehr als einem Wort bestehen, so schließt das neue Wort unmittelbar an das vorhergehende an, nur diesmal mit großem Anfangsbuchstaben. Beispiel: schauspielerVorname oder schauspielerNachname.

Operatoren Teil 2

Variablen werden Werte zugewiesen. Und häufig werden bestehende Werte in Variablen verändert. Dazu haben wir den Zuweisungsoperator = bereits kennengelernt. Darüber hinaus gibt es weitere Zuweisungsoperatoren, die uns das Schreiben von Programmen ein wenig erleichtern, bzw. verkürzen, indem hier bei der Zuweisung bereits Rechenoperationen durchgeführt werden.

= Zuweisungsoperator a = 5
+= Zuweisung mit gleichzeitiger Addition a += 5
identisch mit a = a + 5
-= Zuweisung mit gleichzeitiger Subtraktion a -= 5
identisch mit a = a – 5
*= Zuweisung mit gleichzeitiger Multiplikation a *= 5
identisch mit a = a * 5
/= Zuweisung mit gleichzeitiger Division a /= 5
identisch mit a = a / 5

Das zuvor gezeigt Beispiel lässt sich damit etwas kürzer schreiben:

# Guthaben auf dem Bankkonto: 212,50 Euro
balance = 212.50
# Einzahlung: 20 Euro
balance += 20
# Kontostand ausgeben
print(balance)

Fragen

  1. Was ist eine Variable?
  2. Warum ist es wichtig, dass Variablen verständliche Namen bekommen?
  3. Warum darf ein Variablenname nicht ausschließlich aus Ziffern bestehen?
  4. Kann ich in eine Zeichenkettenvariable eine Zahl, oder in eine Ganzzahlvariable eine Zeichenkette speichern?
Share This

Share This

Share this post with your friends!