Является ли python's hash
функцией портативной?Является ли python hash() переносимым?
Под «переносной» я имею в виду, будут ли они возвращать те же результаты (для тех же данных) в версиях, платформах и реализациях python?
Если нет, существует ли какая-либо альтернатива ему, которая предоставляет такие функции (в то же время способные объединять общие структуры данных)?
The documentation не особо полезно. This question ссылается на библиотеку, которая, похоже, сворачивает свою собственную версию, но я не уверен, что причиной этого станет не-переносимость.
'hash' предназначен для использования только с типом' dict', который реализуется как хэш-таблица. Вероятно, вам нужна функция из модуля hashlib в стандартной библиотеке. – chepner
@chepner Я ищу что-то, что хеширует произвольные структуры данных, такие как 'hash', я не думаю, что' hashlib' делает это? – goncalopp
'hash' не может создавать произвольные структуры данных hash. (Попробуйте передать 'dict' или' set' 'hash'.) – chepner