Python - Guardar un objeto como atributo de otra clase

 
Vista:
sin imagen de perfil

Guardar un objeto como atributo de otra clase

Publicado por Marco (1 intervención) el 11/06/2018 22:53:33
Hola chicos, buenas tardes.

Verán, en mi clase de programación el profesor ni si quiera llegó a explicar herencias y pese a eso, nos puso una tarea enorme de eso que vale un porcentaje grande del curso. Mi problema surge con este ejercicio.


.Defina una clase Linea con dos atributos: puntoA y puntoB. Son dos puntos por los que pasa la línea en un espacio de dos dimensiones (coordenadas). La clase dispondrá de los siguientes métodos:

Linea() Constructor predeterminado que crea una línea con sus dos puntos como (0,0) y (0,0).
Linea(Punto, Punto) Constructor que recibe como parámetros dos objetos de la clase Punto, que son utilizados para inicializar los atributos.
mueveDerecha(float) Desplaza la línea a la derecha la distancia que se indique.
mueveIzquierda(float) Desplaza la línea a la izquierda la distancia que se indique.
mueveArriba(float) Desplaza la línea hacia arriba la distancia que se indique.
mueveAbajo(float) Desplaza la línea hacia abajo la distancia que se indique.
imprimir () Método que nos permita mostrar la información de la línea de la siguiente forma: [puntoA,puntoB]. Por ejemplo: [(0.0,0.0),(1.0,1.0)]


Ahora, mi problema es que no sé como transferirle los objetos de la clase puntos a los valores de los atributos de la clase linea. Lo que llevo es lo siguiente:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
class punto:
 
    x = 0.0
    y = 0.0
 
    def __init__ (self,x=0,y=0):
 
        self.x = x
        self.y = y
 
 
    def imprimir (self):
 
        print (self.x,",",self.y)
 
 
class linea (punto):
 
    puntoA = 0.0
    puntoB = 0.0
 
 
    def __init__ (self,x1,y1,x2,y2):
 
       self.puntoA = punto.__init__(self,x1,y1)
       self.puntoB = punto.__init__(self,x2,y2)
 
 
 
 
    def imprimir (self):
 
 
        print(self.puntoA,self.puntoB)

La verdad creo que estoy un poco nublado pero es que aunque he estado leyendo varios libros, no entiendo bien como conseguir que punto A guarde el valor de punto.

Agradezco la ayuda de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder