1
resposta

[Projeto] Construtor e instância de objetos: Fiz Assim - 07 Hora da prática: métodos especiais e atributos

1-

#1-Implemente uma classe chamada Carro com os atributos básicos, como modelo, cor e ano. Crie uma instância dessa classe e atribua valores aos seus atributos.
class Carro:
    carros =[]
    def __init__(self, modelo, cor, ano):
        self.modelo = modelo
        self.cor = cor
        self.ano = ano

        Carro.carros.append(self)

    def listar_carros():
        print(f'{'MODELO':<30}{'COR':<20}{'ANO':<5}')  
        for carro in Carro.carros:
           print(f'{carro.modelo:<30}{carro.cor:<20}{carro.ano}')

carro1 = Carro('Corola Cros', 'Preto', 2024)
carro2 = Carro('ASX', 'Gelo', 2021)
carro3 = Carro('Mercedes-Benz G-Wagon', 'Branco', 2024)

Carro.listar_carros()

2-3-4 No mesmo código resolvi três exercícios

#2-Crie uma classe chamada Restaurante com os atributos nome, categoria, ativo e crie mais 2 atributos. Instancie um restaurante e atribua valores aos seus atributos.
class Restaurante:
    restaurantes = []

    #3- Modifique a classe Restaurante adicionando um construtor que aceita nome e categoria como parâmetros [...] 
    
    def __init__(self, nome, categoria, estrelas,chefe):
        self.nome = nome
        self.categoria = categoria
        self.estrelas = estrelas
        self.chefe = chefe
        self.ativo = False
        
        Restaurante.restaurantes.append(self)
   
   #4 Adicione um método especial __str__ à classe Restaurante[...]
    def __str__(self):
        return f'{self.nome} | {self.categoria}'
    
    def listar_restaurantes():
        print(f'{'NOME':<25}{'CATEGORIA':<25}{'ESTRELAS':<15}{'CHEFE':<25}{'ATIVO'}')

        for restaurante in Restaurante.restaurantes:
            print(f'{restaurante.nome:<25}{restaurante.categoria:<25}{restaurante.estrelas:<15}{restaurante.chefe:<25}{restaurante.ativo}')

restaurante1 = Restaurante('Casa da Abóbora', 'Culinária Saudável', 3, 'Luiz Horta')
restaurante2 = Restaurante('Palácio da Carne', 'Churrascaria', 3,'Don Cortez')
restaurante3 = Restaurante('OmarRavilhoso', 'Libânesa', 4, 'Omar Liban')

Restaurante.listar_restaurantes()

5-

class Cliente:
    clientes = []
    def __init__(self, nome, idade, hobby, musica):
        self.nome = nome
        self.idade = idade
        self. hobby = hobby
        self.musica_favorita = musica
        
        Cliente.clientes.append(self)

    def listar_clientes():
        print(f'{'NOME':<20}{'IDADE':<15}{'HOBBY':<25}{'MÚSICA FAVORITA':<25}')
        for cliente in Cliente.clientes:
            print(f'{cliente.nome:<20}{cliente.idade:<15}{cliente.hobby:<25}{cliente.musica_favorita}')

cliente1 = Cliente('Cadu', 13, 'Andar de Skate', 'Feel Good Inc - Gorillaz')
cliente2 = Cliente('Mariza', 43, 'Ler', 'Fly me to the moon - Tom Jobim')
cliente3 = Cliente('Petra', 33, 'Viajar', 'Losing my religion - R.E.M')

Cliente.listar_clientes()
1 resposta

Olá, Shayne! Tudo bem?

Analisando seus códigos, posso dizer que você fez um excelente trabalho. Todos os códigos estão corretos e seguem as instruções do desafio.

Então, continue com o bom trabalho e não hesite em pedir ajuda sempre que precisar.

Bons estudos!