1
resposta

[Projeto] Mão na massa: refatorando uma função

class Pessoa():
    def __init__(self, nome, idade, profissao):
        self.nome = nome
        self.idade = idade
        self.profissao = profissao

    def __str__(self):
        return f'{self.nome} || {self.idade} || {self.profissao}'
    
    def aniversario(self):
        self.idade += 1
    
    @property
    def saudacao(self):
        if self.profissao:
            return f'Olá, sou {self.nome}! Trabalho como {self.profissao}'
        else:
            return f'Olá, sou {self.nome}!'

joao = Pessoa('João', 30, 'Engenheiro')
maria = Pessoa('Maria', 25, 'Médica')
print(joao.idade)
joao.aniversario()
print('Joao fez aniversario ', joao.idade)
print(maria.idade)
maria.aniversario()
print('Maria fez aniversario ', maria.idade)
print(joao.saudacao)
print(maria.saudacao)
    
1 resposta

Bom dia, Paulo! Como está?

Incrível! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

Notei que você utilizou o decorador @property para definir uma saudação personalizada, aplicou de forma eficaz o método aniversário para manipular os dados dinamicamente e compreendeu a importância do método especial __str__ para representar objetos de forma clara e legível.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!