Using object id as a hash for objects in Python
Is it wise to use the object id as a hash key (via. the __hash__) to be able to hash an otherwise mutable object for a single instance of a program? Using the object attributes would be nicer but they're all mutable and can change.
This occurred to me while looking at http://stackoverflow.com/questions/2038010/sets-of-instances/2038019 and I'm wondering if it's wise.
Yes, as long as you also define __eq__ (and presumably __ne__!-) consistently with that. IOW, it's fine, as long as you're fine with a==b meaning exactly the same as a is b!-)