Python 3.11+enumфункция
enum.bin()
флаги
Двоичная запись числа, где отрицательные показаны в дополнительном коде, а первый бит — знак: enum.bin(~10) даёт '0b1 0101'.
Синтаксис
enum.bin(num, max_bits=None)
Встроенный bin(-5) печатает '-0b101' — знак минус и модуль, а не те биты, с которыми работают & | ^ ~. enum.bin показывает биты так, как их видят побитовые операторы: знаковый бит отделён пробелом, а max_bits задаёт ширину. Функция живёт в enum, потому что нужна для отладки флагов IntFlag, но годится для любого int.
Примеры
import enum
print(bin(-11)) # → -0b1011
print(enum.bin(10), '|', enum.bin(~10)) # → 0b0 1010 | 0b1 0101
print(enum.bin(5, 8)) # → 0b0 00000101
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности