Eu gostaria de fazer uma cópia profunda de um dict
em python. Infelizmente, o .deepcopy()
método não existe para o dict
. Como faço isso?
>>> my_dict = {'a': [1, 2, 3], 'b': [4, 5, 6]}
>>> my_copy = my_dict.deepcopy()
Traceback (most recent calll last):
File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'deepcopy'
>>> my_copy = my_dict.copy()
>>> my_dict['a'][2] = 7
>>> my_copy['a'][2]
7
A última linha deve ser 3
.
Gostaria que as modificações my_dict
não afetassem o instantâneo my_copy
.
Como faço isso? A solução deve ser compatível com o Python 3.x.