exercicio/veiculo.py
class Veiculo:
veiculos = []
def __init__(self,marca,modelo):
self._marca = marca
self._modelo = modelo
self._ligado = False
Veiculo.veiculos.append(self)
def __str__(self):
if self._ligado:
return f'{self._marca} {self._modelo} Ligado'
else:
return f'{self._marca} {self._modelo} Desligado'
def alterar_ligado(self):
self._ligado = not self._ligado
return self._ligado
exercicio/carro.py
from exercicio.veiculo import Veiculo
class Carro(Veiculo):
carros = []
def __init__(self,marca,modelo,portas):
super().__init__(marca,modelo)
self._portas = portas
Carro.carros.append(self)
def __str__(self):
status = 'Ligado' if self._ligado else 'Desligado'
return f'{self._marca} {self._modelo} Portas: {self._portas} - Status: {status}'
exercicio/moto.py
from exercicio.veiculo import Veiculo
class Moto(Veiculo):
motos = []
def __init__(self,marca,modelo,tipo):
super().__init__(marca,modelo)
self._tipo = tipo
Moto.motos.append(self)
def __str__(self):
status = 'Ligado' if self._ligado else 'Desligado'
return f'{self._marca} {self._modelo} - Tipo: {self._tipo} - Status: {status}'
main.py
from exercicio.carro import Carro
from exercicio.moto import Moto
from exercicio.veiculo import Veiculo
carro1 = Carro('BMW', 'X6', 4)
carro2 = Carro('Audi', 'RS6', 4)
carro3 = Carro('Volkswagen', 'Gol', 2)
moto1 = Moto('Yamaha', 'XJ6', 'Esportiva')
moto2 = Moto('Honda', 'Cg 150', 'Casual')
moto3 = Moto('BMW', 'S1000RR', 'Esportiva')
def main():
print()
print(carro1)
print(carro2)
print(carro3)
print()
print(moto1)
print(moto2)
print(moto3)
print()
if __name__== '__main__':
main()