Am 07.07.2014 17:55, schrieb Ethan Furman:
On 07/07/2014 04:22 AM, Andreas Maier wrote:

Where is the discrepancy between the documentation of == and its
default implementation on object documented?

There's seems to be no discrepancy (at least, you have not shown it),

The documentation states consistently that == tests the equality of the value of an object. The default implementation of == in both 2.x and 3.x tests the object identity. Is that not a discrepancy?


but to answer the question about why the default equals operation is an
identity test:

   - all objects should be equal to themselves (there is only one that
isn't, and it's weird)

I agree. But that is not a reason to conclude that different objects (as per their identity) should be unequal. Which is what the default implementation does.

   - equality tests should not, as a general rule, raise exceptions --
they should return True or False

Why not? Ordering tests also raise exceptions if ordering is not implemented.

Andy

_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to