Juan David Suarez
Pregunta# Obtener delta X y Y def distancia(self, otra_coordenada): delta_x = self.x - otra_coordenada.x delta_y = self.y - otra_coordenada.y
Aquí tengo una duda, sé que se le está asignando el atributo x a otra_coordenada, pero ¿En qué momento de la función la X cambia de valor? ¿No vendría a ser igual self.x que otra_coodenada.x?
Ya que en las funciones donde se mueve el borracho no experimenta ningún cambio de X o Y

Oscar Bolaños
Ese método de la clase Coordenada devuelve la distancia entre dos coordenadas. No cambia o asigna atributos a otra_coordenada, cuenta con que la variable otra_coordenada ya es un objeto de clase Coordenada y por eso a ese objeto le pregunta por sus atributos x e y. Ahora el cambio de posición lo genera la clase Campo con su método mover_borracho. Revisa el código y si aún tienes dudas puedes abrir otra pregunta o continuar en esta. También si no fuí lo suficientemente claro trataré de estar pendiente y aclarar más la explicación.