Перадача прымітываў параметрамі функцый у Python

Давайце разгледзім асаблівасці перадачы прымітыўных тыпаў даных (радкі, лікі) у параметры функцыі.

Хай у нас ёсць функцыя, якая параметрам прымае зменную tst і задае ёй значэнне 2. Пасля функцыі аб'явім зменную num:

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

num = 3

Давайце выклічам функцыю і перададзім у яе параметр зменную num і вывядзем яе значэнне ў кансоль. Нягледзячы на тое, што ў параметры функцыі паказана num, яе значэнне ў глабальнай зоне бачнасці не змянілася:

pythonfunc(num) # выведзе 2
print(num) # выведзе 3
Задание 1

Якім будзе вынік выканання наступнага кода:

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

name = 'user1'

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

Якім будзе вынік выканання наступнага кода:

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

num1 = 0
num2 = 2

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