0
respostas

[Sugestão] Hora da prática: métodos especiais e atributos

#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 = []
    cor = ''
    modelo = ''
    ano = ''

carro_kwid = Carro()
carro_kwid.cor = 'Branco'
carro_kwid.modelo = 'Intense Pack Biton'
carro_kwid.ano = '2025'

print (f'Cor: {carro_kwid.cor} | Modelo: {carro_kwid.modelo} | Ano de fabricação: {carro_kwid.ano}')


#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.
#Adicione um método especial __str__ à classe Restaurante para que, ao imprimir uma instância, seja exibida uma mensagem formatada com o nome e a categoria. Exiba essa mensagem para uma instância de restaurante.
#Modifique a classe Restaurante adicionando um construtor que aceita nome e categoria como parâmetros e inicia ativo como False por padrão. Crie uma instância utilizando o construtor.
class Restaurante():
    def __init__(self,nome,categoria):
        self.nome = nome
        self.categoria = categoria
        ativo = False
        fundacao = ''
        estado = ''
    def __str__(self):
        return f'{self.nome} | {self.categoria}'

#restaurante_Pizza_Place = Restaurante()
#restaurante_Pizza_Place
#restaurante_Pizza_Place.categoria = 'Italiana'
#restaurante_Pizza_Place.ativo = True
#restaurante_Pizza_Place.fundacao = '1999'
#restaurante_Pizza_Place.estado = 'MG'
restaurante_Pizza_Place = Restaurante('Pizza Place', 'Italiana')


#Crie uma classe chamada Cliente e pense em 4 atributos. Em seguida, instancie 3 objetos desta classe e atribua valores aos seus atributos através de um método construtor.

class Cliente():
    clientes = []
    def __init__ (self, nome, telefone, email, endereco):
        self.nome = nome
        self.telefone = telefone
        self.email = email
        self.endereco = endereco
        Cliente.clientes.append(self)

    def listar_clientes ():
        for cliente in Cliente.clientes:
            print(f'{cliente.nome} | {cliente.telefone} | {cliente.email} | {cliente.endereco}')

cliente_jose = Cliente('José', '31998663244', 'josecliente@gmail.com', 'numero: 155 rua: dos sonhos, bairro: minerais, Belo Horizonte')

Cliente.listar_clientes()