Primitiviivsete andmetüüpide edastamine funktsioonide parameetritena Pythonis

Vaatleme primitiivsete andmetüüpide (stringid, arvud) edastamise eripärasid funktsiooni parameetritesse.

Olgu meil funktsioon, mis parameetrina võtab muutuja tst ja määrab sellele väärtuse 2. Pärast funktsiooni deklareerime muutuja num:

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

num = 3

Kutsume funktsioon välja ja edastame selle parameetrisse muutuja num ja väljastame selle väärtuse konsooli. Hoolimata asjaolust, et funktsiooni parameetris on määratud num, ei ole selle väärtus globaalses ulatuses muutunud:

pythonfunc(num) # väljastab 2
print(num) # väljastab 3
Задание 1

Milline on järgmise koodi täitmise tulemus:

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

name = 'user1'

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

Milline on järgmise koodi täitmise tulemus:

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

num1 = 0
num2 = 2

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