Spec-Zone.ru › Python 3.13

PyHash API

См. также 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().

const char *name

Имя функции хеширования (строка в кодировке UTF-8).

const int hash_bits

Внутренний размер значения хеша в битах.

const int seed_bits

Размер входных данных семени в битах.

Добавлен в версии 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–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/c-api/hash.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API