Как работает hash() в Python?

Middle
214 просмотров
AFK Offer AI

hash() возвращает целое число — хеш объекта. Используется для быстрого поиска в dict и set (O(1)). Требование: если a == b, то hash(a) == hash(b). Обратное не обязательно (коллизии). Только immutable объекты хешируемы по умолчанию. Если переопределяешь __eq__, нужно переопределить и __hash__, иначе объект станет unhashable. hash() для int — сам int, для str — зависит от содержимого и рандомизируется при запуске (PYTHONHASHSEED) для безопасности.

Следующий вопрос

Как работает gRPC в Python?