1
resposta

[Projeto] teste

1 - pai.py

class Veiculo:
    def __init__(self, marca, modelo):
        self._marca = marca
        self._modelo = modelo
        self._ligado = False
    
    def __str__(self):
        return f"Veículo: {self._marca} {self._modelo}, Ligado: {self._ligado}"

2 - filha.py

from pai 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}'

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}'

3 - main.py

from filha import Carro, Moto

carro1 = Carro('Volkswagen', 'Golf', 4)
carro2 = Carro('Ford', 'Mustang', 2)
Moto1 = Moto('BMW', 'S1000RR', 'Esportiva')
Moto2 = Moto('Harley-Davidson', 'Street 750', 'Cruiser')

print(carro1)
print(carro2)
print(Moto1)
print(Moto2)
1 resposta

Olá, João, tudo bem?

Parabéns pela implementação do desafio! A estrutura do seu projeto ficou muito organizada.

Você aplicou corretamente o conceito de herança, utilizando o super() para aproveitar a inicialização e a representação (__str__) da classe mãe Veiculo.

Continue praticando assim!

Bons estudos!

Sucesso

Imagem da comunidade