1 - Crie uma Classe Pai (Veiculo): Implemente uma classe chamada Veiculo com um construtor que aceita dois parâmetros, marca e modelo. A classe deve ter um atributo protegido _ligado inicializado como False por padrão.
class Vehicle():
def __init__(self,brand, model):
self._brand = brand
self._model = model
self._connected = False
2 - Construa o Método Especial str: Adicione um método especial str à classe Veiculo que retorna uma mensagem formatada com a marca, modelo e o estado de ligado/desligado do veículo
def __str__ (self):
status = 'Ligado' if self._connected else 'Desligado'
return f'Marca: {self._brand} -- Modelo: {self._model} -- Status: {status}'
3 - Crie uma Classe Filha (Carro): Agora, crie uma classe chamada Carro que herda da classe Veiculo. No construtor da classe Carro, inclua um novo atributo chamado portas que indica a quantidade de portas do carro
from vehicle import Vehicle
class car(Vehicle):
def __init__(self,brand,model,door):
super().__init__ (brand,model)
self._door = door
4 - Implemente o Método Especial str na Classe Filha: Adicione um método especial str à classe Carro que estenda o método da classe pai (Veiculo) e inclua a informação sobre a quantidade de portas do carro
def __str__(self):
status = 'Ligado' if self._connected else 'Desligado'
return f'Marca:{self._brand} -- Modelo: {self._model} -- Portas: {self._door} -- Status: {status}'
5 - Crie uma Classe Filha (Moto): Similarmente, crie uma classe chamada Moto que também herda de Veiculo. Adicione um novo atributo chamado tipo ao construtor, indicando se a moto é esportiva ou casual.
from vehicle import Vehicle
class Motorcycle(Vehicle):
def __init__(self,brand,model,type):
super().__init__(brand,model)
self._type = type
6 - Implemente o Método Especial str na Classe Filha (Moto): Adicione um método especial str à classe Moto que estenda o método da classe pai (Veiculo) e inclua a informação sobre o tipo da moto.
def __str__(self):
status = 'Ligado' if self._connected else 'Desligado'
return f'Marca:{self._brand} -- Modelo: {self._model} -- Tipo: {self._type} -- Status: {status}'
7 - Crie um Arquivo Main (main.py): Crie um arquivo chamado main.py no mesmo diretório que suas classes.
def main():
if __name__ == '__main__':
main()
8 - Importe e Instancie Objetos: No arquivo main.py, importe as classes Carro e Moto. Em seguida, crie três instâncias de Carro e Moto com diferentes marcas, modelos, quantidade de portas e tipos.
from vehicle import Vehicle
from car import car
from motocycle import Motorcycle
my_car = car ('Mistsubhi','Lancer', 4)
my_car2 = car('Toyota','Corolla',4)
my_car3 = car('Honda', 'Civic', 4)
my_motorcycle = Motorcycle('Harley-Davidson', 'Street 750', 'Esportiva')
my_motorcycle2 = Motorcycle('Honda', 'CB 500', 'Casual')
my_motorcycle3 = Motorcycle('Yamaha', 'MT-09', 'Esportiva')
9- Exiba as Informações: Para cada instância, imprima no console as informações utilizando o método str.
def main():
print(my_car)
print(my_car2)
print(my_car3)
print(my_motorcycle)
print(my_motorcycle2)
print(my_motorcycle3)