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

Projeto Veiculo

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()
1 resposta
solução!

Boa tarde Douglas! Tudo bem com você?

Meus parabéns pela conclusão da atividade. Gostaria de aproveitar a oportunidade e deixar a recomendação do artigo Entendendo a Programação Orientada a Objetos com Python para que você possa se aprofundar ainda mais no conhecimento sobre os conceitos da programação Orientada a Objeto.

Fico à disposição. Abraços e bons estudos!

Continue se empenhando e se tiver dúvidas, não hesite em voltar ao fórum ✓