Op 2004-12-22, Nick Coghlan schreef <[EMAIL PROTECTED]>:
>> I'm currently not under the impression I'm able to. Sure I could
>> implement the above mentioned classes, but my feeling is that
>> should I present them here, nobody would be waiting for them.
>> Not because they would be unusfull, but because they go against
>> the current paradigm.
>
> As I see it, you have a couple of courses available:
>
> If you're into pain, consider further developing the 'rehash' idea, and the
> option of adding hash methods to the mutable builtins. You've persuaded me
> that
> the idea is not entirely unreasonable. However, I mention pain, because you'd
> still have work to do persuading enough people (including me) that the
> additional hard to detect bugs this adds to the language would be worth it.
>
> I don't really recommend that option.
How about this:
from UserDict import UserDict
class RehashableDict(UserDict):
def rehash(self):
dic = {}
for k,v in self.data.iteritems():
dic[k] = v
self.data = dic
This works as far as I have tested things out.
I don't think I would recommend adding hash methods to mutable builtins.
Storing keys by identity or value both can make sense for these kind
of objects. And since python prefers not to guess I think it is a good thing
there is no default hash for mutable objects.
--
Antoon Pardon
--
http://mail.python.org/mailman/listinfo/python-list