[Python-3000] Total ordering and __cmp__
Georg Brandl
g.brandl at gmx.net
Wed Mar 21 21:52:20 CET 2007
Terry Reedy schrieb:
> "Georg Brandl" <g.brandl at gmx.net> wrote in message
> news:etrj1a$l9a$1 at sea.gmane.org...
> | Yes, but dictionaries had an explicit ordering in dict_compare() which
> was
> | deleted.
>
> Is dict_compare something added in 2.5? It is neither a builtin or dict
> method in 2.4.
No, it is a C function in dictobject.c, in Python available as dict.__cmp__.
> In any case, this point is that dict ordering is as arbitrary as ordering,
> for instance, a dict and a string. Since Guido stopped the experiment of
> totally ordering all objects when complex nums were added, consistency
> suggests that all fake orderings be eliminated, leaving only the order of
> numbers, characters, and sequences of comparable objects.
It was not really *that* arbitrary. There was a defined algorithm, and it
made some sense (at least for 1-item-dicts).
Georg
More information about the Python-3000
mailing list