[EMAIL PROTECTED] wrote: > A couple of times recently I've come across this problem: I have a > large list to sort and I need to the the "key=function" argument to > sort appropriately. But I actually have the key mapping in a big > dictionary. Now I have to make an intermediary function: > > def key_fn(key): > return key_dict[key] > > If a dict were callable directly, this would be unnecessary. Often the > small extra complexity and compute time is not important, but in > sorting a large list, it could be a significant difference. Is there > some reason a subscriptable thing like a dict should *not* be callable?
Because you can pass key_dict.get instead. Or even key_dict.__getitem__ if you don't want the default=None behavior of the .get() method. -- Robert Kern "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco -- http://mail.python.org/mailman/listinfo/python-list