don't need dictionary's keys - hash table?
kdotsky at gmail.com
kdotsky at gmail.com
Wed Jul 12 12:14:14 EDT 2006
kdot... at gmail.com wrote:
> Hello,
> I am using some very large dictionaries with keys that are long strings
> (urls). For a large dictionary these keys start to take up a
> significant amount of memory. I do not need access to these keys -- I
> only need to be able to retrieve the value associated with a certain
> key, so I do not want to have the keys stored in memory. Could I just
> hash() the url strings first and use the resulting integer as the key?
> I think what I'm after here is more like a tradition hash table. If I
> do it this way am I going to get the memory savings I am after? Will
> the hash function always generate unique keys? Also, would the same
> technique work for a set?
>
I just realized that of course the hash is not always going to be
unique, so this wouldn't really work. And it seems a hash table would
still need to store the keys (as strings) so that string comparisons
can be done when a collision occurs. I guess there's no avoiding
storing they keys?
More information about the Python-list
mailing list