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.