Het is ook mogelijk om variabelen die buiten een functie gedefinieerd zijn binnen een functie aan te passen. Dit noemen we globale variabelen. Het is een goede gewoonte om globale variabelen zoveel mogelijk te vermijden en enkel gebruik te maken van lokale variabelen. Op die manier is elke functie onafhankelijk van het computerprogramma waarin het geschreven is.

planet-earth

Soms kan het nodig zijn globale variabelen te gebruiken. Dit kan je doen door, voor je de variabele verandert, aan te duiden dat deze variabele globaal is.

👀 Voorbeeld - Aanwezigen

Het volgende computerprogramma telt het aantal aanwezigen in een zaal. We maken daarvoor een variabele aanwezigen. Daarnaast is er een functie plus, die opgeroepen wordt wanneer er iemand binnenkomt, en een functie min, die opgeroepen wordt wanneer er iemand buitengaat.

aanwezigen = 0

def plus():
    global aanwezigen
    aanwezigen += 1

def min():
    global aanwezigen
    aanwezigen -= 1

Stel nu dat er drie mensen de zaal binnengaan, en een persoon de zaal verlaat. We roepen dan de volgende functies op.

plus()
plus()
plus()
min()
print(aanwezigen)

Voer dit programma eens uit in de sandbox. Je zal zien dat er nog twee aanwezigen in de zaal geteld worden.

Dit is een voorbeeld van een computerprogramma waar een globale variabele nodig is. Onthou wel dat het programmeren met lokale variabelen aangewezen is: het geeft minder aanleiding tot fouten en fouten zijn makkelijker op te sporen.