Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resoluçao

1 - Crie uma classe chamada Veiculo com um método abstrato chamado ligar

2 - No mesmo arquivo, crie um construtor para a classe Veiculo que aceita os parâmetros marca e modelo.

from abc import ABC,abstractmethod

class Veiculo(ABC):
    def __init__(self,marca,modelo):
        self.marca = marca
        self.modelo = modelo

    @abstractmethod
    def Ligar():
        pass

3 - Crie uma nova classe chamada Carro que herda da classe Veiculo.

4 - No construtor da classe Carro, utilize o método super() para chamar o construtor da classe pai e atribua o atributo específico cor à classe filha.

from veiculo import Veiculo

class Carro(Veiculo):
    def __init__(self, marca, modelo, cor):
        super().__init__(marca, modelo)
        self.cor = cor

    def Ligar(self):
        print(f'O carro {self.modelo} está ligado')

    def __str__(self):
        return f'Marca: {self.marca} | Modelo: {self.modelo} | Cor: {self.cor}'

5- Em um arquivo chamado main.py, importe a classe Carro.

6 - No arquivo main.py, instancie três objetos da classe Carro com diferentes características, como marca, modelo e cor.

from carro import Carro

def main():
    carro1 = Carro('Fiat', 'Uno', 'Branco')
    carro2 = Carro('Mitsubishi','Lancer', 'Preto')
    carro3 = Carro('Honda', 'Civic','Vermelho')
    print(carro1)
    print(carro2)
    print(carro3)

if __name__ == '__main__':
    main()
1 resposta
solução!

Bom dia, Marcelo! Tudo bem com você?

Você fez um excelente trabalho ao implementar a atividade solicitada. A estrutura do seu código está clara e bem organizada. Existe apenas um ponto de atenção no seu código, o método abstrato ligar deve ter como primeiro parâmetroself que referencia o próprio objeto instanciado. O código deve ficar da seguinte forma:

@abstractmethod
def Ligar(self):
    pass

Os demais pontos do código estão corretos e funcionam como esperado.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado