Solucionado (ver solução)
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.