Om ons begrip van functies af te ronden, moeten we het hebben over reikwijdte, nog een van onze
sleutelbegrippen.
Wat is reikwijdte?
Laten we eens kijken.
Scope is iets dat aanwezig is in veel programmeertalen en scope betekent gewoon tot welke variabelen
ik toegang heb?
Dus wat bedoel ik daarmee?
Nou, we hebben dit eerder gezien, waar ik print en laten we zeggen, Nate, als ik op uitvoeren klik.
Ik krijg een lucht, een naam, luchtnaam, naam is niet gedefinieerd omdat, nou ja, het bestaat niet, toch?
En tot nu toe hebben we dit niet echt besproken, maar dit komt door de reikwijdte.
Welke variabelen heb ik toegang tot de Python-interpreter zegt, hey, waar heb ik toegang toe?
En als we iets gebruiken dat het niet begrijpt of waar het geen toegang toe heeft, veroorzaakt het
een nachtmerrie.
Of variabele is niet gedefinieerd, lucht en bereik in Python hebben wat we functioneel bereik of functiebereik noemen.
Wat betekent dat?
Welnu, tot nu toe, wanneer we een variabele maken zoals totaal gelijk aan honderd, maakt dit deel uit van wat we
globale reikwijdte noemen.
Dat betekent dat iedereen in dit bestand toegang heeft tot deze totale variabele.
Ik kan dit gebruiken in een voorwaardelijk blok.
Ik kan het binnen een functie gebruiken.
Het heeft een wereldwijde reikwijdte.
Maar als ik zeg dat Python een functiebereik heeft.
Wat ik bedoel is dat wanneer we een functie maken en laten we zeggen dat we een totaal maken als een of laten we zeggen een
functie.
En we creëren een totaal in de functie, als ik hier het totaal afdruk en ik klik op uitvoeren.
Ik krijg hetzelfde, de naam totaal is niet gedefinieerd, dit komt door het functiebereik van Python, elke keer dat we een
variabele maken, als deze zich niet in een functie bevindt.
Dan maakt het deel uit van het globale bereik, we hebben er toegang toe, maar zie je hier krijgen we
dat rood onderstreepte, ongedefinieerde naamtotaal.
Als laten we zeggen, bijvoorbeeld, ik had een voorwaarde indien waar.
Dan is X gelijk aan 10 als ik dit doe en ik zeg X en ik klik op uitvoeren.
Ik heb 10 omdat, nou ja, hoewel ik inkeping heb.
De enige keer dat ik een nieuwe scope maak, kun je dit zien als een nieuw universum dat we voortbrengen.
Welnu, dat kunnen we alleen doen als we een functie als deze definiëren, dus beschouw scope
als een nieuwe wereld die we in ons geval creëren. zijn eigen
wereld waar we niet echt toegang toe hebben.
We kunnen alleen total gebruiken als we inspringen.
En het is een deel van deze wereld.
Dat is wat scope is, wie toegang heeft tot wie.
Dus laten we hier een pauze nemen en ik wil een spelletje spelen in de volgende video waarin we
proberen te achterhalen wie toegang heeft tot wie.
Ik zal zien in die ene door.