Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env pytho
- """ herencia """
- class Bateria():
- """ ensayo de una bateria de coche"""
- def __init__(self,bateria="41Kwh 400V Litio"):
- self.bateria=bateria
- def get_bateria(self):
- return (self.bateria)
- #Clase madre
- class Coche():
- """Una ensayo simple de representar un coche"""
- def __init__(self,fabricante,modelo,fecha=2018):
- self.fabricante=fabricante
- self.modelo=modelo
- self.fecha=fecha
- self.kilometros=0
- def get_descriptivo(self):
- return '\n'+str(self.fecha)+' '+self.fabricante+' '+self.modelo
- def deposito_petroleo(self):
- return "SI"
- def get_km(self):
- return ("kM = "+ str(self.kilometros))
- def set_km(self,km):
- if (km < self.kilometros):
- print ("No se puede volver atras el cuenta km !")
- else:
- self.kilometros=km
- def incrementa_km(self):
- if(km>0):
- self.kilometros+=km
- #Herecia ,clase hija de Coche vamos a crear un coche electrico basandonos en la clase anterior
- class CocheElectrico(Coche):
- def __init__(self,fabricante,modelo,fecha,solar):
- """inizializa los atributos de la clase madre """
- super().__init__(fabricante,modelo,fecha)
- """ y algunos datos especificos de un coche electrico ...."""
- self.bateria=Bateria()
- self.panel_solar=solar
- """metodo sobreescito de la clase anterior """
- def deposito_petroleo(self):
- return "NO POSEE"
- def get_bateria(self):
- return str(self.bateria.get_bateria())
- def get_panel(self):
- if (self.panel_solar):
- return " SI "
- else :
- return " NO "
- #INSTANCIAS
- #Empleamos la primera clase
- coche_normal=Coche("SEAT","LEON")
- coche_normal.set_km(69000)
- print (coche_normal.get_descriptivo())
- print (coche_normal.get_km())
- print (coche_normal.deposito_petroleo())
- #Empleamos la segunda clase que hereda de la primera
- zoe=CocheElectrico("renault","zoe",2019,True)
- zoe.set_km(69000)
- print (zoe.get_descriptivo())
- print (zoe.get_km())
- print (zoe.get_bateria())
- print ("Panel solar = "+ zoe.get_panel())
- print (zoe.deposito_petroleo())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement