Python alue
- Edellinen sivu Python iterointi
- Seuraava sivu Python moduuli
Muuttujat ovat käytettävissä vain niiden luomisalueella. Tämä kutsutaan alueeksi.
Paikallinen alue
Muuttujat, jotka luodaan funktioiden sisällä, kuuluvat kyseisen funktion paikalliseen alueeseen ja voidaan käyttää vain kyseisessä funktiossa.
Esimerkki
Muuttujat, jotka luodaan funktioiden sisällä, ovat käytettävissä vain kyseisessä funktiossa:
def myfunc(): x = 100 print(x) myfunc()
Funktion sisällä oleva funktio
Kuten edellä olevassa esimerkissä näkyy, muuttuja x ei ole käytettävissä ulkopuolella funktiota, mutta se on käytettävissä funktion sisällä sijaitseville muiden funktioiden:
Esimerkki
Voit käyttää paikallista muuttujaa toisessa funktiossa funktion sisällä:
def myfunc(): x = 100 def myinnerfunc(): print(x) myinnerfunc() myfunc()
Globaalialue
Python-ohjelmointikoodin pääosassa luodut muuttujat ovat globaalimuuttujia, jotka kuuluvat globaalille alueelle.
Globaalimuuttujat ovat saatavilla kaikissa alueissa (sekä globaaleissa että paikallisissa).
Esimerkki
Ulkoisesti luodut muuttujat ovat globaalimuuttujia, ja niitä voi käyttää kenellä tahansa:
x = 100 def myfunc(): print(x) myfunc() print(x)
Nimeä muuttujat
Jos käytät samannimistä muuttujaa sekä funktiossa että ulkopuolella, Python käsittelee ne kahdena erillisenä muuttujana, toinen on saatavilla globaalissa alueessa (ulkopuolella funktiota) ja toinen paikallisessa alueessa (funktion sisällä):
Esimerkki
Tämä funktio tulostaa paikallisen muuttujan x, ja koodi tulostaa myös globaalimuuttujan x:
x = 100 def myfunc(): x = 200 print(x) myfunc() print(x)
Global-avainsana
Jos tarvitset globaalin muuttujan luomista, mutta olet jumissa paikallisessa alueessa, voit käyttää global-avainsanaa.
Global-avainsana tekee muuttujasta globaalimuuttujan.
Esimerkki
Jos käytät global-avainsanaa, muuttuja kuuluu globaaliin alueeseen:
def myfunc(): global x x = 100 myfunc() print(x)
Lisäksi, jos haluat muuttaa globaalia muuttujaa funktiossa, käytä myös global-avainsanaa.
Esimerkki
Jos haluat muuttaa globaalin muuttujan arvoa funktiossa, käytä global-avainsanaa viittaamaan muuttujaan:
x = 100 def myfunc(): global x x = 200 myfunc() print(x)
- Edellinen sivu Python iterointi
- Seuraava sivu Python moduuli