Classe pai (Veiculo)
from abc import ABC, abstractmethod
#criação da classe pai Veiculo
class Veiculo(ABC):
lista_veiculos = []
def __init__(self, _marca, _modelo):
self._marca = _marca
self._modelo = _modelo
Veiculo.lista_veiculos.append(self)
@abstractmethod
def ligar(self):
pass
Classe filho (Carro)
#Importação da classe veiculo criada
from modelos.automovel.veiculo import Veiculo
#criação da classe filha Carro
class Carro(Veiculo):
def __init__(self, _marca, _modelo, _cor):
super().__init__(_marca, _modelo)
self._cor= _cor
Veiculo.lista_veiculos.append(self)
#Criação do método para alterar o status Ligado/Desligado
def ligar(self):
return f'O carro {self._marca} {self._modelo} {self._cor} está ligado.'
função main
#Importação da classe carro
from modelos.automovel.carro import Carro
#Instanciando três carros da classe Carro
carro1=Carro("Honda", "Fit", "branco")
carro2=Carro("Toyota", "Etios", "branco")
carro3=Carro("Ford", "Focus", "prata")
#Teste de impressão dos veículos instanciados
def main():
print(carro1.ligar())
print(carro2.ligar())
print(carro3.ligar())
if __name__ == "__main__":
main()