bin()

Функция bin() возвращает строковое двоичное представление целого числа с префиксом 0b. Если число отрицательное — добавляется знак минус перед префиксом. Полезна при работе с битовыми масками, флагами и низкоуровневой логикой.

Сигнатура

bin(x)

Параметры:

  • x — целое число (int) или объект с методом __index__().

Возвращает: str вида '0b...'.

Примеры

Положительные и отрицательные числа:

print(bin(10))
print(bin(255))
print(bin(-7))
0b1010
0b11111111
-0b111

Подсчёт количества единичных битов:

n = 173
ones = bin(n).count("1")
print(f"{n} в двоичном: {bin(n)}, единиц: {ones}")
173 в двоичном: 0b10101101, единиц: 5

Битовая маска прав доступа:

READ, WRITE, EXEC = 0b100, 0b010, 0b001
perm = READ | EXEC
print(bin(perm))
print("Чтение:", bool(perm & READ))
print("Запись:", bool(perm & WRITE))
0b101
Чтение: True
Запись: False

Срез без префикса 0b:

n = 42
pure = bin(n)[2:]
padded = pure.zfill(8)
print(pure)
print(padded)
101010
00101010

Свой класс с __index__:

class Pin:
    def __init__(self, num):
        self.num = num
    def __index__(self):
        return self.num

print(bin(Pin(13)))
0b1101

См. также

Примечание

Описание основано на официальной документации Python (docs.python.org), распространяемой под лицензией PSF License v2. © Python Software Foundation.