Antes de implementar a propriedade saudação o print saía como string, depois passou a sair como endereço de memória
class Pessoa:
def __init__(self, nome='', idade=0 , profissao=''):
self.nome = nome
self.idade = idade
self.profissao = profissao
def __str__(self):
return f'{self.nome}, {self.idade} anos, {self.profissao}'
@property
def aniversario(self):
self.idade += 1
def saudacao(self):
if self.profissao:
return f'Olá, sou {self.nome}! Trabalho como {self.profissao}.'
else:
return f'Olá, sou {self.nome}!'
pessoa_1 = Pessoa('Richarlison', 26, 'Perna de pau')
pessoa_2 = Pessoa('Gabigol', 27, 'Trapper')
pessoa_3 = Pessoa('Gabriel Jesus', 26)
pessoa_4 = Pessoa('Neymar', 31, 'Influencer')
print('Infomações Iniciais: ')
print(pessoa_1.saudacao)
print(pessoa_2.saudacao)
print(pessoa_3.saudacao)
print(pessoa_4.aniversario)