xkenneth <[EMAIL PROTECTED]> wrote:

> Now obviously, if I test an instance of either class equal to each
> other, an attribute error will be thrown, how do I handle this? I
> could rewrite every __eq__ function and catch attribute errors, but
> that's tedious, and seemingly unpythonic. Also, I don't want an
> attribute error thrown whenever two classes are compared that don't
> have the same attributes.
> 
> I have a sneaky feeling I'm doing something completely unpythonic
> here.
> 
Surely an A isn't equal to every other object which just happens to have 
the same attributes 'a' and 'b'? I would have thoughts the tests want to be 
something like:

class A:
    def __eq__(self,other):
         return (isinstance(other, A) and
            self.a == other.a and self.b == other.b)

(and similar for B) with either an isinstance or exact match required for 
the type.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to