Předávání primitivních typů parametry funkcí v Pythonu

Pojďme se podívat na specifika předávání primitivních typů dat (řetězce, čísla) do parametrů funkce.

Předpokládejme, že máme funkci, která parametrem přijímá proměnnou tst a nastavuje jí hodnotu 2. Po funkci deklarujeme proměnnou num:

pythondef func(tst):
  tst = 2
  print(tst)

num = 3

Pojďme zavolat funkci a předat do jejího parametru proměnnou num a vypišme její hodnotu do konzole. Navzdory tomu, že v parametru funkce je uvedena num, její hodnota v globálním rozsahu platnosti se nezměnila:

pythonfunc(num) # vypíše 2
print(num) # vypíše 3
Задание 1

Jaký bude výsledek provedení následujícího kódu:

pythondef func(txt):
  txt = 'user2'
  return txt

name = 'user1'

res = func(name)
print(res)
print(name)
Задание 2

Jaký bude výsledek provedení následujícího kódu:

pythondef func(tst1, tst2):
  tst1 += 1
  tst2 *= 2
  return tst1 + tst2

num1 = 0
num2 = 2

res = func(num1, num2)
print(num1 + num2)
print(res)