Olá Gabriel, tudo bem com você?
Seu código está bem estruturado e você está no caminho certo, continue com esse empenho e dedicação. Gostaria de aproveitar a oportunidade e listar dois pontos de correção no código para que ele fique ainda melhor e mais alinhado com a proposta da atividade.
Método aniversario
como função: No seu código, você definiu aniversario
como uma propriedade, mas ele deveria ser um método que incrementa a idade da pessoa. Para corrigir este ponto, basta remover o decorador @property
do método aniversario
, deixando como abaixo:
def aniversario(self):
self._idade += 1
Propriedade saudacao
: A saudação pode ser transformada em uma propriedade para que você possa chamá-la sem parênteses, conforme sugerido na atividade. Para isso, basta adicionar o decorador @property
no método saudacao
, deixando como abaixo:
@property
def saudacao(self):
return f'Olá, meu nome {self._nome} e trabalho com {self._profissao}' if self._profissao else f'Olá, meu nome é {self._nome}'
Feita essas mudanças, vale notar que agora o método aniversario
é uma função que incrementa a idade, e a saudação é uma propriedade, permitindo que você a chame sem parênteses.
Aqui está uma versão ajustada do seu código:
class Pessoas:
def __init__(self, nome='', idade=0, profissao=''):
self._nome = nome.title()
self._idade = idade
self._profissao = profissao
def __str__(self):
return f'Sou {self._nome}, tenho {self._idade} anos e trabalho como {self._profissao}'
def aniversario(self):
self._idade += 1
@property
def saudacao(self):
return f'Olá, meu nome é {self._nome} e trabalho como {self._profissao}' if self._profissao else f'Olá, meu nome é {self._nome}'
# Testando a classe
pessoa1 = Pessoas(nome='marcia', idade=25, profissao='Desenvolvedor')
pessoa2 = Pessoas(nome='lucas', idade=30, profissao='Pedreiro')
pessoa3 = Pessoas(nome='enzo', idade=17)
print(pessoa1.saudacao)
print(pessoa2.saudacao)
print(pessoa3.saudacao)
Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!