Phil Thompson wrote:
How stable should the implementation of, for example, a string's hash across different Python versions?Is it defined that hash("foo") will return the same value for Python 2.5.1, 2.6.1 and 2.6.2? Thanks, Phil
Pretty certain that A.B.* will always hash the same (unacceptable change as a bugfix), and that there has been no recent need to change the string hash (it gets a _lot_ of use), so in practice I suspect that 2.3.* through 2.8.* all produce the same string hashes. However, the language doesn't guarantee a lot about the value, and I would not be surprised to see a non-CPython implementation use a different hash. Generally it is a good idea to keep the result of hash computations inside the program, and off the persistant store, so I'd want a good excuse to use the hash "outside." --Scott David Daniels [email protected] -- http://mail.python.org/mailman/listinfo/python-list
