0
respostas

MÉTODOS ESPECIAIS E ATRIBUTOS

Arquivo classes.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
  

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

    def ligar(self):
       return f"O {self.modelo} está ligado"
    
    def __str__(self):
       return f"Marca: {self.marca} | Modelo: {self.modelo} | Cor: {self.cor}"

Arquivo main.py

# arquivo: main.py
from classe.classes import Carro

def main():
    # 6. Instanciando três objetos da classe Carro com diferentes características
    carro_01 = Carro("Volkswagen", "Polo", "Prata")
    carro_02 = Carro("Chevrolet", "Onix", "Branco")
    carro_03 = Carro("Ford", "Mustang", "Preto")

    # Exibindo os objetos
    print(carro_01)
    print(carro_02)
    print(carro_03)

    # Testando o método ligar
    print(carro_01.ligar())

if __name__ == "__main__":
    main()