koranthala wrote:
Hi, Dictionary has the items method which returns the value as a list of tuples. I was wondering whether it would be a good idea to have an extra parameter - sort - to allow the tuples to be sorted as the desire of users. Currently what I do is:class SDict(dict): def items(self, sort=None): '''Returns list. Difference from basic dict in that it is sortable''' if not sort: return super(SDict, self).items() return sorted(self.iteritems(), key=sort) Usage: for a dictionary of strings sorted: l = abcd.items(sort=lambda x:(x[1].lower(), x[0])) Now what I wanted was to incorporate this in the basic dictionary itself. Not only items(), but the methods similar to it - iteritems etc all can also have this parameter. Please let me know your views. Is this a good enough idea to be added to the next version of Python?
In Python 3, the current .keys() returning a list and .iterkeys() returning an iterator both disappear and are replaced by .keys() returning an iterable set-like view of the dict. 'sorted(d.keys())' is the way to convert the view into a sorted list. So your idea is obsolete.
-- http://mail.python.org/mailman/listinfo/python-list
