Överföring av primitiva typer som funktionsparametrar i Python
Låt oss undersöka egenskaperna hos överföring av primitiva datatyper (strängar, tal) till funktionsparametrar.
Antag att vi har en funktion som tar en variabel
tst som parameter och tilldelar
den värdet 2. Efter funktionen deklarerar vi
variabeln num:
def func(tst):
tst = 2
print(tst)
num = 3
Låt oss anropa funktionen och skicka
variabeln num till dess
parameter och skriva ut
dess värde till konsolen. Trots att
num anges i funktionsparametern,
förändras dess värde inte i det globala scopet:
func(num) # skriver ut 2
print(num) # skriver ut 3
Vad blir resultatet av följande kod:
def func(txt):
txt = 'user2'
return txt
name = 'user1'
res = func(name)
print(res)
print(name)
Vad blir resultatet av följande kod:
def func(tst1, tst2):
tst1 += 1
tst2 *= 2
return tst1 + tst2
num1 = 0
num2 = 2
res = func(num1, num2)
print(num1 + num2)
print(res)