Duplication de dictionnaires : préserver l'originalité
Lors de l'attribution d'un dictionnaire à un autre en Python, il est important de se rappeler que des références sont créées et non des copies. Cela signifie que toute modification apportée au dictionnaire attribué (la copie) affectera également le dictionnaire d'origine. Pour éviter ce comportement, une copie conforme du dictionnaire doit être créée.
Considérons l'exemple suivant :
dict1 = {"key1": "value1", "key2": "value2"} dict2 = dict1 dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'WHY?!', 'key1': 'value1'}
Après avoir attribué dict2 à dict1, les modifications apportées à dict2 sont reflétées dans dict1 comme Bien. Pour éviter cela, une copie explicite doit être effectuée :
dict2 = dict(dict1) dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'value2', 'key1': 'value1'}
Alternativement, la méthode copy() peut être utilisée :
dict2 = dict1.copy() dict2["key2"] = "WHY?!" print(dict1) # {'key2': 'value2', 'key1': 'value1'}
En utilisant l'une ou l'autre de ces méthodes, les modifications apportées au le dictionnaire copié (dict2) n'affectera pas le dictionnaire original (dict1).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!