Sobes.tech
Middle

a = 4 b = [4] résultat = (a, b) a = 5 b.append(5) Question : quelle est la valeur de résultat après l'exécution de toutes les lignes et pourquoi ?

sobes.tech IA

Réponse de l'IA

Après avoir exécuté toutes les lignes, la variable result sera égale à (4, [4, 5]).

Explication :

  • La ligne result = (a, b) crée un tuple, où a est le nombre 4 et b est une référence à la liste [4].
  • Ensuite, a est changé en 5, mais cela n'affecte pas le tuple déjà créé, car les nombres sont des objets immuables et la valeur 4 est stockée dans le tuple.
  • L'appel b.append(5) modifie la liste b en place, en ajoutant l'élément 5.
  • Étant donné que le tuple stocke une référence à la liste b, les modifications de la liste se reflètent également dans le tuple.

Résultat :

result == (4, [4, 5])  # True