Dictionaries with tuples or tuples of tuples
Mitya Sirenef
msirenef at lightbird.net
Mon Feb 18 21:54:19 EST 2013
On 02/18/2013 09:17 PM, Jon Reyes wrote:
> Thanks Dave and Mitya for enlightening me about dictionaries. I'm still confused about this though:
>
> " so that if two
> key objects are equal, they stay equal, and if they differ, they stay
> different. "
>
> What does this mean? I won't be comparing key objects with one
another. Also, when I had two keys with the same value the value of the
other key disappeared so I assume in runtime if there are multiple keys
of the same value only the last one will appear.
You won't be, but dict will.
Dict is by definition a mapping where a value is assigned to a unique
key. If you have two keys and two values, and then change one key to
be equal to the second key, that's not kosher, because which value it's
supposed to return when you try to get it by that key?
So in effect, key's hash value should not change. If key is immutable,
you can be certain that it's hash value will not change. If it's
mutable, you have to make sure not to change the key in a way that'd
make its hash value different than it was.
-m
--
Lark's Tongue Guide to Python: http://lightbird.net/larks/
Graphic design is the paradise of individuality, eccentricity, heresy,
abnormality, hobbies and humors. George Santayana
More information about the Python-list
mailing list