'Why Python only uses 30-bit from every 32-bit unsigned integers instead of using up all 32 bits?

I found that Python only use 30-bit in every 32-bit unsigned integer from arrays. If all 32 bits are used it can represent a larger integer, but Python chooses to leave two bits remained. Why does Python not use all bits of the integer? What's the rationale behind this? And how are the remaining 2 bits used?

quote

There are two different sets of parameters: one set for 30-bit digits, stored in an unsigned 32-bit integer type, and one set for 15-bit digits with each digit stored in an unsigned short.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source