ункция @Python copy.deepcopy () не работает должным образом [дубликат]
На этот вопрос уже есть ответ:
Как скопировать класс Python? 7 ответовЯ играл с функцией глубокого копирования и копированием, и у меня возникла одна и та же проблема с ними обоими. Это похоже на то, что копия была ссылкой (или указателем) вместо правильной копии. Я работаю с записями данных (классы) в Python, может быть, это может быть .. Я покажу вам пример:
>>> import copy
>>> class player1:
... age = 23
... score = 1
>>> class player2:
... age = 14
... score = 2
>>> player3 = copy.deepcopy(player1)
Я печатаю параметры.
>>> print player1.age, player1.score
23 1
>>> print player2.age, player2.score
14 2
>>> print player3.age, player3.score
23 1
Теперь я увеличиваю параметр оценки в записи данных player1.
>>> player1.score += 3
И я снова печатаю результаты.
>>> print player1.age, player1.score
23 4
>>> print player2.age, player2.score
14 2
>>> print player3.age, player3.score
23 4
ПОЧЕМУ ИГРОК 3 ИЗМЕНЕН? Я просто увеличил параметр в player1, а не player3. Это изменчивый, а не неизменный.
Заранее спасибо