On 2/17/2014 10:22 AM, M.-A. Lemburg wrote: > On 17.02.2014 15:38, Jon Ribbens wrote: >> On Mon, Feb 17, 2014 at 12:43:25PM +0100, M.-A. Lemburg wrote: >>> This doesn't only apply to numeric comparisons. In Python 2 you >>> can compare None with any kind of object and it always sorts first, >> >> No you can't. See http://bugs.python.org/issue1673405 . >> >> According to Tim Peters, the "None is less than everything" rule >> never existed. Tim is correct. Copying from my other response (posted after you wrote this) >>> class Bottom(object): # get same results below without 'object' def __lt__(self, other): return True # the following two results are consistent and # contradict the claim that 'None is smaller than anything' >>> Bottom() < None True >>> cmp(Bottom(), None) -1 # the following two results are not consistent with the # definition of cmp, so 1 of the 2 is buggy >>> None < Bottom() True >>> cmp(None, Bottom()) 1 > Well, then Tim probably didn't read the code in object.c :-) I did, as I suspect Time has also. Function default_3way_compare is a 'final fallback'. The comment within, besides being a code comment and not the doc, is wrong unless 'anything' is qualified. -- Terry Jan Reedy
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4