Classe veiculo.py
class Veiculo:
def __init__(self, marca, modelo):
self._marca = marca
self._modelo = modelo
self._ligado = False
def __str__(self):
ligado_str = 'ligado' if self._ligado else 'desligado'
return f'{self._marca} {self._modelo} - Estado: {ligado_str}'
Classe carro.py
from veiculo import Veiculo
class Carro(Veiculo):
def __init__(self, marca, modelo, portas):
super().__init__(marca, modelo)
self._portas = portas
def __str__(self):
return super().__str__() + f', Portas: {self._portas}'
Classe moto.py
from veiculo import Veiculo
class Moto(Veiculo):
def __init__(self, marca, modelo, tipo):
super().__init__(marca, modelo)
self._tipo = tipo
def __str__(self):
return super().__str__() + f', Tipo: {self._tipo}'
Classe app.py
from carro import Carro
from moto import Moto
def main():
# Instanciando objetos
carro1 = Carro('Toyota', 'Corolla', 4)
carro2 = Carro('Honda', 'Civic', 2)
carro3 = Carro('Hyundai', 'Creta', 4)
moto1 = Moto('Harley-Davidson', 'Sportster', 'Esportiva')
moto2 = Moto('Honda', 'CB 500', 'Casual')
# Alterando o estado dos veículos para "ligado"
carro1._ligado = True
moto2._ligado = True
# Exibindo informações
print("Resultados para os carros:")
print(carro1)
print(carro2)
print(carro3)
print("\nResultados para as motos:")
print(moto1)
print(moto2)
if __name__ == '__main__':
main()
Terminal
Resultados para os carros:
Toyota Corolla - Estado: ligado, Portas: 4
Honda Civic - Estado: desligado, Portas: 2
Hyundai Creta - Estado: desligado, Portas: 4
Resultados para as motos:
Harley-Davidson Sportster - Estado: desligado, Tipo: Esportiva
Honda CB 500 - Estado: ligado, Tipo: Casual