Passage des primitives en paramètres de fonctions en Python

Examinons les particularités du passage des types de données primitifs (chaînes de caractères, nombres) en paramètres de fonction.

Supposons que nous ayons une fonction qui accepte en paramètre une variable tst et lui assigne la valeur 2. Après la fonction, déclarons une variable num :

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

num = 3

Appelons la fonction et passons à son paramètre la variable num et affichons sa valeur dans la console. Malgré le fait que le paramètre de la fonction soit num, sa valeur dans la portée globale n'a pas changé :

pythonfunc(num) # affichera 2
print(num) # affichera 3
Задание 1

Quel sera le résultat de l'exécution du code suivant :

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

name = 'user1'

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

Quel sera le résultat de l'exécution du code suivant :

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

num1 = 0
num2 = 2

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