0
respostas

[Projeto] Hora da prática: métodos especiais e atributos

  • VEICULO.PY
from abc import ABC, abstractmethod


class Veiculo(ABC):
    def __init__(self,marca, modelo):
        self._marca = marca
        self._modelo = modelo
    
    @abstractmethod
    def ligar(self):
        pass
  • CARRO.PY
from veiculo import Veiculo

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

    def ligar(self, ligado):
        return 'Ligado' if self._ligado else 'Desligado'


    def __str__(self):
     return f'Marca: {self._marca} | Modelo: {self._modelo} | Cor: {self._cor}'
    
  • MAIN.PY
from carro import Carro

carro_supra = Carro('Toyota', 'Supra', 'Branco')
carro_astra = Carro('Chevrolet', 'Astra', 'Vermelho')
carro_fusca = Carro('Volkswagen', 'Fusca', 'Bege')

print(carro_supra)
print(carro_astra)
print(carro_fusca)
  • TERMINAL: