''' Exercicio:
Agora é sua vez! Crie uma nova classe chamada Pessoa com atributos como nome,
idade e profissão. Adicione um método especial __str__
para imprimir uma representação em string da pessoa.
Implemente também um método de instância chamado aniversario
que aumenta a idade da pessoa em um ano. Por fim, adicione uma propriedade
chamada saudacao que retorna uma mensagem de saudação personalizada
com base na profissão da pessoa.
''' #Resolução:
class Pessoa:
niver = 1
count = 0
pessoas= []
def __init__(self,nome,idade,profissao):
self.nome = nome
self.idade = idade
self.profissao = profissao
Pessoa.pessoas.append(Pessoa.pessoas)
def __str__(self):
return f'O Nome da Pessoa é {self.nome}, Ele tem {self.idade} anos, E sua profissão é {self.profissao}'
def aniversario(self):
if Pessoa.count != 0:
self.idade += Pessoa.niver
def aniversario(self):
if len(Pessoa.pessoas) is not None:
self.idade += Pessoa.niver
def aniversario(self):
#if Pessoa.count != 0:
self.idade += 1
def saudacao(self):
return f'Saudações estamos muito felizes ter um profissional como você que é {self.profissao} colaborando conosco.'
pessoa1 = Pessoa('Guilherme','33','Músico')
pessoa2 = Pessoa('Matheus','28','Trans')
print(vars(pessoa1))
pessoa1.aniversario()
print(pessoa1.saudacao())
print(vars(pessoa2))
pessoa2.aniversario()
print(pessoa2.saudacao())
''' Ao executar o código completo para criar o pessoa2 o objeto pessoa1 não tem a idade alterada. E a execução cria os objetos e aprensenta os valores de seus atributos assim como a mesagem de saudação reconhecendo os atributo chamada com o fstring
Não estou conseguindo acertar a lógica para que a idade da pessoa aumenta a cada novo objeto que for criado na classe, preciso de ajuda depois de algumas tentativas '''