O Caso Curioso do hash(-1) == hash(-2) em Python
2025-01-10
Uma pergunta no Reddit sobre o motivo de `hash(-1) == hash(-2)` em Python levou a uma investigação. Ao mergulhar no código-fonte do CPython, o autor descobriu que -1 é usado como um indicador de erro na função `PyObject_Hash`. Portanto, quando o hash calculado é -1, ele é convertido para -2. Isso não é um easter egg do Python, mas sim uma peculiaridade de como o código C do CPython lida com erros.