API PyHash
См. также элемент PyTypeObject.tp_hash и раздел Хеширование числовых типов.
-
type Py_hash_t -
Тип хеш-значения: знаковое целое число.
Добавлено в версии 3.2.
-
type Py_uhash_t -
Тип хеш-значения: беззнаковое целое число.
Добавлено в версии 3.2.
-
PyHASH_MODULUS -
Простое число Мерсенна
P = 2**n -1, используемое в схеме числового хеширования.Добавлено в версии 3.13.
-
PyHASH_BITS -
Показатель степени
nчислаPвPyHASH_MODULUS.Добавлено в версии 3.13.
-
PyHASH_MULTIPLIER -
Простой множитель, используемый для строковых и различных других хешей.
Добавлено в версии 3.13.
-
PyHASH_INF -
Хеш-значение, возвращаемое для положительной бесконечности.
Добавлено в версии 3.13.
-
PyHASH_IMAG -
Множитель, используемый для мнимой части комплексного числа.
Добавлено в версии 3.13.
-
type PyHash_FuncDef -
Определение хеш-функции, используемое в
PyHash_GetFuncDef().-
Py_hash_t (*const hash)(const void*, Py_ssize_t) -
Хеш-функция.
-
const char *name -
Имя хеш-функции (строка в кодировке UTF-8).
-
const int hash_bits -
Внутренний размер хеш-значения в битах.
-
const int seed_bits -
Размер входного значения seed в битах.
Добавлено в версии 3.4.
-
-
PyHash_FuncDef *PyHash_GetFuncDef(void) -
Получить определение хеш-функции.
См. также
PEP 456 «Безопасный и взаимозаменяемый алгоритм хеширования».
Добавлено в версии 3.4.
-
Py_hash_t Py_HashPointer(const void *ptr) -
Вычислить хеш-значение указателя: обработать значение указателя как целое число (внутренне привести его к
uintptr_t). Разыменование указателя не выполняется.Функция не может завершиться с ошибкой: она не может вернуть
-1.Добавлено в версии 3.13.
-
Py_hash_t PyObject_GenericHash(PyObject *obj) -
Универсальная хеш-функция, предназначенная для использования в слоте
tp_hashобъекта типа. Её результат зависит только от идентичности объекта.Особенность реализации CPython: В CPython она эквивалентна
Py_HashPointer().Добавлено в версии 3.13.
© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/c-api/hash.html