[EMAIL PROTECTED] wrote: > The same thing goes for the values(). Here most people will argue that > values are not necessarily unique, so a list is more appropriate, but > in fact the values are unique it is just that more than one key could > map to the same value. What is 'seen' in dictionary is the mapping > rule. Also the values are not ordered and should not be indexable -- > they should be a set. Just as the keys(), one ordered list of values > from a dictionary on one machine will not necessarily be equal to > another list of values an on another machine, while in fact, they > should be.
This part is pretty much a non-starter. Not all Python objects are hashable. In [1]: d = {} In [2]: for i in range(1, 10): ...: d[i] = range(i) ...: ...: In [3]: set(d.values()) --------------------------------------------------------------------------- exceptions.TypeError Traceback (most recent call last) /Users/kern/<ipython console> TypeError: list objects are unhashable Also, I may need keys to map to different objects that happen to be equal. -- 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