当python builtin hash()
刚刚跨平台连接时。我有一个应用程序使用内置hash()
'test'
。两个系统都是64位,python 2.7.12
窗口:
>>> hash('test')
1308370872
的Linux:
>>> hash('test')
2314058222102390712
为什么会这样?
答案 0 :(得分:3)
无法保证Python中的值hash
返回。您似乎正在使用32位Windows Python(这是一个猜测),并且您在Linux上使用64位python(再次猜测)。 IIRC(我还没有检查过),默认hash(item)
返回item
的地址作为其哈希值。
如果您想拥有可以跨操作系统进行比较的值,请查看hashlib。