[Python-Dev] python 3 niggle: None < 1 raises TypeError

Greg Ewing greg.ewing at canterbury.ac.nz
Tue Feb 18 06:32:19 CET 2014

Terry Reedy wrote:
> To make None a true bottom object, the rich comparison 
> methods would have to special-case None as either argument before 
> looking at the __rc__ special methods of either.

I don't think it would be necessary to go that far.
It would be sufficient to put the special case *after*
giving both operations a chance to handle the operation
via the type slots.

Well-behaved objects generally wouldn't go out of their
way to defeat that, but they could do so if necessary,
e.g. to create a Bottom() that compares less than None.
Although once None becomes usable as a bottom in most
cases, there shouldn't be much need for people to
introduce their own bottoms.


More information about the Python-Dev mailing list