Python

Variablen in Python

Sei die Erste, die diesen Beitrag teilt!

Beim Wort Variable denkst du bestimmt direkt an den Buchstaben x, der als Unbekannte in mathematischen Gleichungen sein Unwesen treibt. 🤓 Keine Angst, hier geht es um Variablen in der Programmiersprache Python. Dort haben Variablen nämlich eine ganz andere Bedeutung, als in Mathe. Deshalb erkläre ich dir in diesem Beitrag, was es mit Variablen in Python auf sich hat.

Was ich dir hier erkläre, ist auch für viele andere Programmiersprachen gültig. Es kann dir folglich im Allgemeinen nicht schaden, wenn du die hier vorgestellten Konzepte verstanden hast.


Was sind Variablen in Python?

Bevor ich den Begriff Variable definiere, möchte ich erklären, was man sich darunter ungefähr vorstellen kann.

Ich verwende gerne das Bild eines Koffers, in dem etwas aufbewahrt wird. Eine Variable ist ein Koffer, dem ich einen bestimmten Namen gebe und in dem etwas „Wertvolles“ aufbewahrt wird.

Nimmst du zum Beispiel die Zahl 3 und möchtest sie irgendwo aufbewahren, um sie später wiederzuverwenden, dann speicherst du sie in einer Variablen. Diese Variable kann irgendeinen Namen bekommen. Nennen wir sie mal wichtige_zahl.

In Python schreibst du das Ganze dann so:

Der Variablen wichtige_zahl wird der Wert 3 zugeordnet. (Screenshot Python)
Der Variablen wichtige_zahl wird der Wert 3 zugeordnet. (Screenshot Python)

Es ist hilfreich sich vorzustellen von rechts nach links zu lesen.

Wir packen sozusagen die Zahl 3 und stecken sie in einen „Koffer“. Diesen Koffer beschriften wir mit wichtige_zahl. Ich schreibe in der Python Console wichtige_zahl = 3.

Anschließend drücke ich ENTER und der Cursor rutscht eine Zeile weiter. Der Koffer mit der 3 darin ist jetzt aufgeräumt. Er befindet sich irgendwo in unserem Computerspeicher.

Wenn ich anschließend wissen will, was in der Variablen wichtige_zahl abgespeichert ist, gebe ich in der Console einfach wichtige_zahl ein und drücke ENTER.

Dann erscheint der Wert, den ich zuvor der Variablen gegeben habe.

Zusammengefasst können wir sagen:

Eine Variable ist ein abstrakter Behälter in dem Daten gespeichert werden.

Der Begriff Variable kommt, ähnlich wie in Mathe, daher, dass der Wert veränderbar ist.

In unserem vorherigen Beispiel haben wir der Variable wichtige_zahl den Wert 3 zugewiesen. Zu einem späteren Zeitpunkt kann ich aber auch etwas anderes in der Variable wichtige_zahl speichern. Der „Inhalt“ des „Koffers“ kann ausgetauscht werden. Um wieder das Bild mit dem Koffer zu verwenden.


Variablen in Python richtig verwenden

Jetzt haben wir einen Eindruck davon bekommen, was Variablen überhaupt sind. Nun möchte ich darauf eingehen, wie du eine Variable in Python definieren und ihr Werte zuweisen kannst.

In Python muss man im Gegensatz zu anderen Programmiersprachen wie z. B. Java oder C++ keine Variablen deklarieren. Was der Begriff genau bedeutet, werde ich in diesem Beitrag nicht erklären. In Python kommt das „Deklarieren“ sowieso nicht vor.

Eine Variable erstellen (deklarieren) und mit einem Wert füllen (initialisieren)

Um eine Variable zu erstellen, musst du dir einen Namen für die Variable überlegen. Hierfür hast du alle Buchstaben des Alphabets in Groß- (A-Z) und Kleinschreibung (a-z), die Ziffern (0-9) und den Unterstrich _ zur Verfügung. Man spricht auch von einem identifier einer Variablen.

Einige Beispiele für Variablennamen siehst du auf dem folgenden Bild. Ich habe jeder der Variablen den Wert 0 zugeordnet.

Variablen in Python. Code mit 6 Zeilen. Diese sind: x =0 , alter = 0, ProductCode = 0, anzahl_bestellungen = 0, ab = 0, zahlen123 = 0
Variablen in Python (Screenshot)

Wie du siehst, habe ich in jeder der Variablen den Wert 0 gespeichert. Die Zahl Null ist vom Datentyp integer (int). Diese Tatsache hat Python einfach so hingenommen und verstanden.

In anderen Programmiersprachen muss im Vorfeld festgelegt werden, welcher Datentyp und teilweise sogar von welcher Länge der Datentyp sein wird, der in der Variable gespeichert wird.

Wenn du nicht weißt, was Datentypen sind, findest du hier meinen Beitrag über die vier wichtigsten Datentypen in Python.

Ich speichere zum Beispiel einen String (str) in der Variablen x und eine Gleitkommazahl (float) in der Variablen y.

Variablen x und y definiert

Die type()-Funktion in Python

Habe ich eine Variable deklariert (eingeführt) und sie mit einem Wert initialisiert oder ihr einen Wert zugewiesen, kann ich mithilfe der type()-Funktion in Python den Typ des gespeicherten Wertes abfragen.

Hört sich kompliziert an, hier nochmal einfacher erklärt.

Weiter oben haben wir die Variablen x und y eingeführt. In der Variablen x hatten wir den Wert „Hallo“ und in der Variablen y den Wert 2.0 gespeichert.

Bei ersterem handelt es sich um den Datentyp string (kurz: str, Zeichenkette) und bei dem zweiten Wert um eine float (Gleitkommazahl).

Um das herauszufinden, wenn ich es aus irgendeinem Grund nicht weiß, kann ich die type()-Funktion in Python verwenden. Für unser Beispiel sieht das Ganze so aus:

Frage ich den Datentyp mithilfe der type()-Funktion ab, so erhalte ich <class ’str‘> und <class ‚float‘> zurück.

Code in Python
Datentyp von x und y mit type(x) und type(y) abgefragt

Ohne mein Zutun hat also Python allein durch meine Eingabe entschieden, um welchen Datentyp es sich handeln muss und gibt mir diesen durch Anwendung der type()-Funktion zurück.


Du kannst den Wert einer Variable im Verlauf des Programmcodes immer wieder ändern. Das heißt, der Variable können neue Werte zugewiesen werden.

Wichtig ist dabei, dass du den Code Zeile für Zeile und die Zuweisung von rechts nach links liest.

Schauen wir uns ein Beispiel an.

Beispiel: Zuweisung neuer Werte für Variablen

Wir definieren zwei Variablen x und y mit unterschiedlichen Werten. Anschließend schreiben wir x = y. Wir speichern dann den Wert von y in der Variablen x. Der ursprüngliche Wert der Variablen x ist dann überschreiben.

Besser zu sehen auf folgendem Bild:

Variablenzuweisung von rechts nach links lesen. (Screenshot)

Zuerst speichern wir in der Variablen x den Wert 100 (integer) und in der Variablen y den string ‚Hallo‘. Wenn wir dann in Zeile 3 print(x) eingeben, sehen wir, nachdem wir das Programm laufen lassen, auf der rechten Seite die Zahl 100 in der Konsole.

Allerdings haben wir in Zeile 4 den Wert von y in x gespeichert. Die Variable y hatte den Wert ‚Hallo‘ gespeichert und damit hat nun auch x diesen Wert.

Man sagt, der Variablen x wurde ein neuer Wert zugewiesen.

Tatsächlich, verwenden wir das zweite Mal das print-Statement in Zeile 5 und lassen das Programm laufen, erscheint auf der Konsole in der zweiten Zeile Hallo.

Wir können also den Wert einer Variablen ändern und dafür auch Werte von anderen Variablen verwenden.

Ein weiteres Beispiel, dass ich dir zeigen möchte, ist das Folgende.

variable = 1
print(variable)
variable = variable + 3
print(variable)
variable = 5
print(variable)
variable = -3.7
print(variable)

Auf der Console erscheint:

1
4
5
-3.7

Ganz besonders wichtig ist die Zuweisung in Zeile 3 des Beispiels.

Zuerst wurde die Variable mit dem Wert 1 initialisiert. Anschließend weisen wir ihr den Wert variable = variable + 3 zu.

Wir lesen von rechts nach links. Der ALTE Wert der Variablen wird + 3 gerechnet und dann in der Variablen gespeichert. Also ist NEUE Wert 4, was auch auf der Console zu sehen ist.

Zuweisungsoperatoren in Python

Anstatt variable = variable + 3 kannst du in Python auch den Zuweisungsoperator += verwenden.

Also in diesem Fall variable += 3 ergibt dasselbe, wie variable = variable + 3.

Genauso funktioniert das, wenn anstatt + ein Minus – oder Mal * etc. verwendet wird.

Auf Zuweisungsoperatoren werde ich hier nicht näher eingehen, dazu später ein ausführlicherer Beitrag.


Welche Namen dürfen Variablen in Python haben?

Bei der Wahl des Namen deiner Variablen in Python gibt es mehrere Dinge zu beachten. Jede Programmiersprache hat eine bestimmte Namenskonvention für Variablen.

Deine Variable darf in Python bspw. nicht mit einer Zahl beginnen. Damit ist auch ausgeschlossen, dass du nur Zahlen für den Namen einer Variablen verwendest.

Außerdem kannst du keine Begriffe nehmen, die bereits eine andere Bedeutung in Python haben.

Das sind die Boole’schen Werte True und False und die Operatoren auf diesem Datentyp wie and, or oder not. Genauso kannst du pass und is nicht verwenden.

Der Interpreter wird dir SyntaxError: invalid syntax auf der Console ausgeben. Das sieht dann so aus. Ich habe versucht not als Variablennamen zu wählen.

SyntaxError: invalid syntax

Diese ganzen Ausnahmen sind jetzt wahrscheinlich nicht so einfach zu merken, wenn man noch nicht viel mit Python gearbeitet hat.

Ich empfehle dir einfach Namen für Variablen zu verwenden, die erklären, was du damit machen willst. Im Zweifel einfach einen Unterstrich oder eine Ziffer anfügen.

Es gibt insgesamt in Python 3.6 genau 33 dieser Begriffe, die bereits für andere Funktionen belegt sind und deshalb nicht als identifier, also Bezeichnungen, von zum Beispiel Variablen dienen können. In diesem Beitrag von Real Python (auf Englisch), gibt es eine tolle Übersicht über diese 33 Begriffe.

Meines Wissens sind bis Python 3.9 Stand August 2021 keine dazugekommen. Falls ich nur unaufmerksam war und es doch noch weitere gibt, schreib es gerne in die Kommentare!

Variablennamen dürfen keine Bindestriche oder Leerzeichen enthalten

Wichtig ist auch, dass die Variablennamen weder Bindestriche noch Leerzeichen enthalten.

Die folgenden Beispiele funktionieren in Python also NICHT!

eine zahl = 3
eine-zahl = 3

Verwende stattdessen

eine_zahl = 3
einezahl = 3
eineZahl = 3
EineZahl = 3

Wobei ich anmerken möchte, dass in Python der erste Fall mit Unterstrich am liebsten verwendet wird. Möchtest du in gutem Pythonstil schreiben, dann kannst du dich daran halten. Dazu mehr im letzten Abschnitt dieses Beitrags.




Schreibweise von Variablen in Python (snake case, camel case, pascal case)

Hier nochmal eine Vertiefung zu dem Thema Namenskonvention oder Namensgebung von Variablen in Python.

Soll deine Variable aus mehreren Begriffen zusammengesetzt werden, hast du im Grunde genommen viele Möglichkeiten.

Damit das Ganze leserlich bleibt, eignen sich im Grunde drei Möglichkeiten:

  • Camel Case (Kamelschreibweise): Der Anfangsbuchstabe der einzelnen Wörter ist großgeschrieben, außer am Anfang.

    Also zum Beispiel: namePatient, letzterAufrufDatum usw.
  • Snake Case (Schlangenschreibweise): Die Wörter werden durch Unterstriche getrennt.

    Beispiel: name_patient, letzter_aufruf_datum usw.
  • Pascal Case (Pascalschreibweise): Es gibt auch die Unterscheidung in diese dritte Variante. Wenn man Camel Case verwendet und den Buchstaben des ersten Wortes auch großschreibt (oben NamePatient z. B.). Davon habe ich allerdings in Bezug auf Python selten gehört.

Für Variablen in Python verwendet man am häufigsten die Schlangenschreibweise oder Snake Case. Dazu gibt es aber im Internet unterschiedliche Meinungen. Ich lasse das mal so stehen… 😎

Das war für den Anfang alles, was ich dir zu Variablen in Python sagen wollte.

Ich hoffe, du konntest einen Einblick gewinnen und hast Ideen, wie du deine Variablen in Zukunft sinnvoll bezeichnen kannst.

Wenn du mehr über Python wissen möchtest, findest du hier alle meine Beiträge, die ich bisher zum Thema geschrieben habe.

Für dich vielleicht ebenfalls interessant...

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert