1
resposta

Na classe perfil na função construtora não consta o atributo curtidas que está encapsulado, não entendi?

class Perfil(object):
    'Classe padrão para perfis de usuários'
    def __init__(self, nome, telefone, empresa):
       self.nome = nome
       self.telefone = telefone
       self.empresa = empresa
       self.__curtidas = 0


    def imprimir(self):
       print('Nome: %s, Telefone: %s, Empresa: %s Curtidas: %s' % (self.nome, self.telefone, self.empresa, self.__curtidas))

    def curtir(self):
       self.__curtidas += 1

    def obter_curtidas(self):
       return self.__curtidas
1 resposta

Oi Júlio, na verdade consta na função __init__() e ela é inicializada lá dentro:

def __init__(self, nome, telefone, empresa):
       self.nome = nome
       self.telefone = telefone
       self.empresa = empresa
       self.__curtidas = 0      #aqui

Apenas não recebemos ela por parâmetro já que ela funciona como um de contador de curtidas e não faz sentido dar a possibilidade de ser modificada fora desta classe .

Não sei se era essa sua dúvida. Se ainda não está claro, poste aqui novamente.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software