a función @Python copy.deepcopy () no funciona correctamente [duplicar]

Esta pregunta ya tiene una respuesta aquí:

¿Cómo copiar una clase de python? 7 respuestas

He estado jugando con la función de copia profunda y la función de copia y tengo el mismo problema con ambos. Es como si la copia fuera una referencia (o un puntero) en lugar de una copia adecuada. Estoy trabajando con registros de datos (clases) en Python, tal vez podría ser eso ... Te muestro un ejemplo:

>>> import copy
>>> class player1:
...    age = 23
...    score = 1
>>> class player2:
...    age = 14
...    score = 2
>>> player3 = copy.deepcopy(player1)

Imprimo los parámetros.

>>> print player1.age, player1.score
23 1
>>> print player2.age, player2.score
14 2
>>> print player3.age, player3.score
23 1

Ahora incremente el parámetro de puntuación en el registro de datos del jugador1.

>>> player1.score += 3

Y vuelvo a imprimir los resultados.

>>> print player1.age, player1.score
23 4
>>> print player2.age, player2.score
14 2
>>> print player3.age, player3.score
23 4 

¿POR QUÉ HA CAMBIADO EL JUGADOR 3? Acabo de incrementar un parámetro en player1, no player3. Es mutable en lugar de inmutable.

Gracias por adelantado

Respuestas a la pregunta(3)

Su respuesta a la pregunta