Retour aux quiz
Débutant

Piège des arguments mutables par défaut (5)

Quelle valeur est affichée dans la console ?

quiz.py
1
a = (1, 2, [3, 4])
2
 
3
a[2].append(5)
4
 
5
print(a)

Réponses possibles

A(1, 2, [3, 4, 5])
B(1, 2, [3, 4])
C(1, 2, 5, [3, 4])
D(1, 2, [3, 4], 5)

Explication

Les tuples sont immuables mais si il contient un élément mutable comme une liste, on peut modifier cet élément mutable. Donc la liste à l'intérieur du tuple est modifiée mais pas le tuple lui-même 🤯.