Python- bereik
Een variabele is alleen beschikbaar vanuit de regio waarin deze is gemaakt. Dit wordt bereik genoemd .
Lokaal bereik
Een variabele die binnen een functie is gemaakt, behoort tot het lokale bereik van die functie en kan alleen binnen die functie worden gebruikt.
Voorbeeld
Een variabele die binnen een functie is gemaakt, is beschikbaar binnen die functie:
def myfunc():
x = 300
print(x)
myfunc()
Functie Binnen Functie
Zoals uitgelegd in het bovenstaande voorbeeld, is de variabele x
niet beschikbaar buiten de functie, maar is deze beschikbaar voor elke functie binnen de functie:
Voorbeeld
De lokale variabele is toegankelijk vanuit een functie binnen de functie:
def myfunc():
x = 300
def myinnerfunc():
print(x)
myinnerfunc()
myfunc()
Wereldwijd bereik
Een variabele die in het hoofdgedeelte van de Python-code is gemaakt, is een globale variabele en behoort tot het globale bereik.
Globale variabelen zijn beschikbaar binnen elk bereik, globaal en lokaal.
Voorbeeld
Een variabele die buiten een functie is gemaakt, is globaal en kan door iedereen worden gebruikt:
x = 300
def myfunc():
print(x)
myfunc()
print(x)
Variabelen benoemen
Als je binnen en buiten een functie met dezelfde variabelenaam werkt, behandelt Python ze als twee afzonderlijke variabelen, één beschikbaar in het globale bereik (buiten de functie) en één beschikbaar in het lokale bereik (binnen de functie):
Voorbeeld
De functie drukt de lokale af x
en vervolgens drukt de code de globale af x
:
x = 300
def myfunc():
x = 200
print(x)
myfunc()
print(x)
Globaal trefwoord
Als u een globale variabele moet maken, maar vastzit in het lokale bereik, kunt u het
global
trefwoord gebruiken.
Het global
sleutelwoord maakt de variabele globaal.
Voorbeeld
Als u het global
trefwoord gebruikt, behoort de variabele tot het globale bereik:
def myfunc():
global x
x = 300
myfunc()
print(x)
Gebruik het global
trefwoord ook als u een wijziging wilt aanbrengen in een globale variabele binnen een functie.
Voorbeeld
Om de waarde van een globale variabele binnen een functie te wijzigen, verwijst u naar de variabele met behulp van het global
trefwoord:
x = 300
def myfunc():
global x
x = 200
myfunc()
print(x)