Näkyvyysalueiden vuorovaikutus Pythonissa
Joskus ulkoisella (globaalilla) ja sisäisellä (lokaalilla) muuttujalla on sama nimi:
num = 1
def func():
num = 2
print(num)
On kuitenkin tärkeää ymmärtää, että paikallinen num
vaikka sillä on sama nimi kuin globaalilla,
on Pythonille eri muuttuja.
Tämä tarkoittaa, että globaalia num EI
kirjoiteta yli funktion sisällä, vaan se säilyttää
alkuperäisen arvonsa. Kun funktiota func
kutsutaan, konsoliin tulostuu vain
paikallisen num arvo, ja
print -funktiolla - globaalin muuttujan
arvo:
func() # tulostaa 2
print(num) # tulostaa 1
Mikä on seuraavan koodin suorituksen tulos:
num = 10
def func():
num = 5
return num
func()
print(num)
Mikä on seuraavan koodin suorituksen tulos:
num = 3
def func():
num = 4
return num
num = func()
print(num)
Mikä on seuraavan koodin suorituksen tulos:
num = 1
def func():
num = 2
return 1
num = func()
print(num)
Mikä on seuraavan koodin suorituksen tulos:
num1 = 1
def func():
num2 = 2
func()
print(num1)
Mikä on seuraavan koodin suorituksen tulos:
num1 = 1
def func():
num2 = 2
func()
print(num2)
Mikä on seuraavan koodin suorituksen tulos:
num1 = 1
def func():
num2 = 2
func()
num2 = 3
print(num2)
Mikä on seuraavan koodin suorituksen tulos:
num1 = 1
num2 = 2
def func():
num2 = 3
func()
print(num2)
Mikä on seuraavan koodin suorituksen tulos:
num1 = 1
def func():
num1 = 2
print(num1)