Primitiivien välittäminen funktioiden parametreina Pythonissa
Tarkastellaanpa primitiivistietotyyppien (merkkijonot, numerot) välittämisen erityispiirteitä funktion parametrina.
Oletetaan, että meillä on funktio, joka parametrina
ottaa muuttujan tst ja asettaa
sille arvon 2. Funktion jälkeen esittelemme
muuttujan num:
pythondef func(tst):
tst = 2
print(tst)
num = 3
Kutsutaan funktiota ja välitetään sen
parametriin muuttuja num ja tulostetaan
sen arvo konsoliin. Huolimatta siitä, että
funktion parametrina on num,
sen arvo globaalissa näkyvyysalueessa
ei ole muuttunut:
pythonfunc(num) # tulostaa 2
print(num) # tulostaa 3
Задание 1
Mikä on seuraavan koodin suorituksen tulos:
pythondef func(txt):
txt = 'user2'
return txt
name = 'user1'
res = func(name)
print(res)
print(name)
Задание 2
Mikä on seuraavan koodin suorituksen tulos:
pythondef func(tst1, tst2):
tst1 += 1
tst2 *= 2
return tst1 + tst2
num1 = 0
num2 = 2
res = func(num1, num2)
print(num1 + num2)
print(res)