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

[Resolução]

Boa noite, envio minha resolução. Feedbacks e dicas de boas práticas são bem-vindos.

veiculo.py

from abc import ABC, abstractmethod

class Veiculo(ABC):

    veiculos = []

    def __init__(self, marca, modelo):
        self._marca = marca
        self._modelo = modelo
        self._ligado = False
        self.veiculos.append(self)

    @classmethod
    def listar_veiculos(cls):
        if not cls.veiculos:
            mensagem = 'Não há carros disponíveis'
        else:
            mensagem = f'{'Lista de Veículos'.center(90,'_')}\n'
            for i in cls.veiculos:
                mensagem += f'Marca: {i._marca.ljust(25)} | Modelo: {i._modelo.ljust(25)} | Status: {'Ligado' if i._ligado else 'Desligado'}\n' #depois testar com if i._ligado else 'desligado'
        print(mensagem)

    @abstractmethod
    def ligar(self):
        self._ligado = True
    
    

carro.py

from veiculo import Veiculo

class Carro(Veiculo):

    def __init__(self, marca, modelo, cor):
        super().__init__(marca, modelo)
        self._cor = cor

    def ligar(self):
        super().ligar()

main.py

# Crie uma classe chamada Veiculo com um método abstrato chamado ligar.
# No mesmo arquivo, crie um construtor para a classe Veiculo que aceita os parâmetros marca e modelo.
# Crie uma nova classe chamada Carro que herda da classe Veiculo.
# 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.
# Em um arquivo chamado main.py, importe a classe Carro.
# No arquivo main.py, instancie três objetos da classe Carro com diferentes características, como marca, modelo e cor.

from carro import Carro
from veiculo import Veiculo

def main():
    carro1 = Carro('Peugeot', '206', 'cinza')
    carro2 = Carro('Volkswagen', 'Polo', 'prata')
    carro3 = Carro('Mercedes Benz', 'C180', 'branca')

    carro1.ligar()
    Veiculo.listar_veiculos()


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

Oi, Caio, tudo bem?

Parabéns pelo resultado e obrigado por compartilhar no fórum e contribuir com a comunidade!

Continue mergulhando em tecnologia e se tiver dúvidas, conte com o fórum.

Abraços e bons estudos!