Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Deu um erro no atributo perfil.curtidas, consta que ele não existe. E se eu reinicio, dai ele não consegue fazer a instancia

Esse é o erro:

Traceback (most recent call last): File "", line 1, in AttributeError: 'Perfil' object has no attribute 'curtidas'

Aqui está o código:

-- coding: UTF-8 --

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' % (self.nome, self.telefone, self.empresa)

3 respostas
solução!

Amigo,

Vc esqueceu o underscore(SUBLINHADO) no init, veja abaixo, Chamado após a instância ter sido criada (por new()), mas antes de ser devolvida ao chamador. Os argumentos são aqueles passados para a expressão do construtor da classe. Se uma classe base tiver um init()método, o método da classe derivada init(), se houver, deve chamá-lo explicitamente para assegurar a inicialização adequada da parte da classe base da instância; por exemplo: .BaseClass.init(self, [args...])

# -*- coding: UTF-8 -*-
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" % (self.nome, self.telefone, self.empresa)

Estranho, pois não sei por que o código que eu mandei foi sem o underscore ?

E sempre que mando o código, o underscore não aparece aqui. Mas funcionou aqui e agradeço pela atenção.