Solucionado (ver solução)

Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

Solucionado
(ver solução)
1
resposta

comportamento __eq__()

pessoal, podem me tirar uma dúvida?

dada a classe Minha_classe eu reecrevi o método eq() da seguinte maneira:

def __eq__(self, other)

        return self.meu_atributo == other.meu_atributo

supondo que em algum momento no meu programa eu comparei o objeto Minha_classe com um objeto do tipo list() por exemplo e o objeto list não possui o atributo 'meu_atributo'.

Devo implementar uma tratativa de excessão no meu método sobrescrito eq? ou há algum outro padrão para lidar com esta situação?

1 resposta
solução!

O que vc pode fazer é checar o tipo se o tipo n for o esperado vc pode retornar false e se for o mesmo type vc pode comparar o valor dos campos.