Este aqui é o código que escrevi antes de ver a opinião do instrutor.
class Pessoa:
def __init__(self, nome = '', idade = 0, profissao = ''):
self.nome = nome.title()
self.idade = idade
self.profissao = profissao
def __str__(self):
return f'NOME: {self.nome}, IDADE: {self.idade}, PROFISSÃO: {self.profissao}'
def aniversario(self):
self.idade += 1
def saudacao(self):
print(f'Saudações {self.nome}! Você é {self.profissao}, certo?')
pessoa1 = Pessoa('gilberto', 34, 'madeireiro')
pessoa1.aniversario()
pessoa1.saudacao()
print(pessoa1)
Após verificá-las, eu implementei um IF/ELSE no str e nas saudações e criei uma segunda instância da classe Pessoa:
class Pessoa:
def __init__(self, nome = '', idade = 0, profissao = ''):
self.nome = nome.title()
self.idade = idade
self.profissao = profissao
def __str__(self):
if self.profissao:
return f'NOME: {self.nome}, IDADE: {self.idade}, PROFISSÃO: {self.profissao}'
else:
return f'NOME: {self.nome}, IDADE: {self.idade}'
def aniversario(self):
self.idade += 1
def saudacao(self):
if self.profissao:
return f'Saudações {self.nome}! Você é {self.profissao}, certo?'
else:
return f'Saudações {self.nome}!'
pessoa1 = Pessoa('gilberto', 34, 'madeireiro')
pessoa1.aniversario()
print(pessoa1)
print(pessoa1.saudacao())
pessoa2 = Pessoa('sra. déia', 83)
pessoa2.aniversario()
print(pessoa2)
print(pessoa2.saudacao())