Tentei reassistir algumas vezes, ler mais somente o conteúdo da aula e ainda não consegui entender muito bem qual o objetivo e uso claro do property, quando falou sobre classe eu consegui até entender, tanto que fiz o exercício da aula anterior e funcionou de certa forma (Segue abaixo o exercício anterior para fins de explicação, ignorem as piadas, estudo os códigos fazendo piada com amigos para tentar usufruir da criatividade)
# 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:
def __init__(self, modelo, cor, ano):
self.modelo = modelo
self.cor = cor
self.ano = ano
prius = Carro('Hibrido', 'Perolado', 2018)
# 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:
def __init__(self, nome, categoria, bairro, preço, ativo = False):
self.nome = nome
self.categoria = categoria
self.bairro = bairro
self.preço = preço
self.ativo = ativo
def __str__(self):
return f'{self.nome} | {self.categoria}'
colorado = Restaurante('Colorado', 'Cervejaria', 'Valparaíso', 'Alto', True)
print(colorado)
# 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.
# 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.
# 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:
def __init__(self, nome, idade, cor, genero):
self.nome = nome
self.idade = idade
self.cor = cor
self.genero = genero
ferreira = Cliente('Ferreira', 25, 'Árabe', 'Calistenico')
nerdola = Cliente('Rafael', 23, 'Branquelo', 'Botafoguense')
vinicius = Cliente( 'Vinicius', 55, 'Anão', 'Gótico')
O problema foi quando começou a explicação de property nada mais entrou na minha cabeça, são muitos nomes diferentes, parametros, classe, atributos, property, init/str e não consegui absorver bem, percebi quanod cheguei agora no exercício e sinto que não aprendi nada.
Alguma dica de como reforçar esse conteúdo para tentar aprender mesmo?