Forum Python

Fil d’Ariane du forum – Vous êtes ici :ForumLangage Python: Langage PythonCopie d’un dictionnaire modifiée
Please or S’enregistrer to create posts and topics.

Copie d’un dictionnaire modifiée

Bonjour,
J’ai un dictionnaire et je veux en faire une copie avant de modifier la copie. Mais quand je modifie la copie, l’original change aussi. Voici ce que j’ai fait :
data = {"a": {"x": 1}, "b": {"y": 2}}
copy_data = data.copy()
copy_data["a"]["x"] = 42
print(data)

Je m’attendais à ce que data ne soit pas affecté, mais ce n’est pas le cas. Pourquoi ? Et comment le corriger ? Merci !

Bonjour Webstart,

Utilisez une copie profonde pour copier les objets imbriqués :

import copy

data = {"a": {"x": 1}, "b": {"y": 2}}
copy_data = copy.deepcopy(data)
copy_data["a"]["x"] = 42
print(data)
# Résultat : {"a": {"x": 1}, "b": {"y": 2}}