On Thu, 16 Jul 2009 00:30:26 -0700, Chris Rebert wrote: > On Wed, Jul 15, 2009 at 11:21 PM, Mark Summerfield<l...@qtrac.plus.com> > wrote: >> Hi, >> >> I'm just wondering why <, <=, >=, and > are not supported by >> collections.OrderedDict: >> >> >>> d1 = collections.OrderedDict((("a",1),("z",2),("k",3))) d2 = >> >>> d1.copy() >> >>> d2["z"] = 4 >> >>> d1 == d2 >> False >> >>> d1 < d2 >> Traceback (most recent call last): >> File "<pyshell#6>", line 1, in <module> >> d1 < d2 >> TypeError: unorderable types: OrderedDict() < OrderedDict() >> >> It just seems to me that since the items in ordered dictionaries are >> ordered, it would make sense to do an item by item comparison from >> first to last item in exactly the same way that Python compares lists >> or tuples? > > Use case? I'm curious.
Surely it would be the same use case as for comparing two lists? There doesn't need to be a special "OrderedDict use case" beyond "an OrderedDict is just like a list of (key,value) tuples, but searches are faster". Or maybe not. If OrderedDicts are sequences as well as mappings, then we should be able to sort them. And that seems a bit much even for me. -- Steven -- http://mail.python.org/mailman/listinfo/python-list