Globale Variablen
Completion requirements
Globale Variablen sind außerhalb jedweder Funktion definiert und daher überall im Quellcode zugreifbar:
1 2 |
def funktion(): # Definition einer Funktion print(globVar) # Ausgabe der globalen Variable (und Ende der Funktionsdefinition) |
Wird eine Variable außerhalb einer Funktion definiert, so ist sie global (überall) lesbar.
3 4 5 |
globVar = "bin eine globale Variable" # Definition einer globalen Variable funktion() # Aufruf der Funktion print(globVar) # Ausgabe der globalen Variable |
Der Inhalt von globVar wird zweimal ausgegeben. Einmal aus der Funktion heraus und ein zweites Mal nach dem Funktionsaufruf:
bin eine globale Variable
bin eine globale Variable
Sonderfall: Schreibzugriff
var = "foo"
def funktion():
var = "bar"
print(var)
funktion()
print(var)
- Bei größeren Programmen verliert man wegen tausender globaler Variablen leicht die Übersicht und benutzt eventuell Variablen, die man für andere Dinge bereits einsetzt.
- Globale Variablen benötigen für die gesamte Laufzeit des Programms Arbeitsspeicher, auch wenn diese schon längst nicht mehr benutzt werden. Der Speicher lokaler Variablen wird nach Ablauf der Funktion dagegen wieder freigegeben.
Man vermeidet daher normalerweise globale Variablen. Bei sehr laufzeitkritischen Systemen (Echtzeitsystemen) kann es allerdings sinnvoll sein, globale Variablen zu verwenden, denn man vermeidet zeitintensives Kopieren von Werten bei der Parameterübergabe.
Last modified: Friday, 30 June 2023, 12:58 PM