J'ai essayé ce qui suit dans l'interpréteur python :
>>> a = []
>>> b = {1:'one'}
>>> a.append(b)
>>> a
[{1: 'one'}]
>>> b[1] = 'ONE'
>>> a
[{1: 'ONE'}]
Ici, après avoir ajouté le dictionnaire b
à la liste a
Je modifie la valeur correspondant à la clé 1
dans le dictionnaire b
. D'une manière ou d'une autre, cette modification est également répercutée dans la liste. Lorsque j'ajoute un dictionnaire à une liste, ne suis-je pas en train d'ajouter la valeur du dictionnaire ? Il semble que j'aie ajouté un pointeur sur le dictionnaire à la liste et que, par conséquent, les modifications apportées au dictionnaire se reflètent également dans la liste.
Je ne veux pas que la modification soit répercutée dans la liste. Comment faire ?