В этом уроке по основам Python рассмотрим функцию bin()
. Данная функция предназначена для перевода чисел в двоичную систему исчисления.
Что такое двоичное число (бинарное) - это число, выраженное в двоичной системе исчисления, которое использует только два числа: обычно это 0, и 1. Вместо обычных цифр от 0 до 9 из десятичной системы исчисления.
Например представим числа:
Десятичная система | Двоичная система |
10 | 1010 |
255 | 11111111 |
59 | 111011 |
Теперь давайте разберемся с функцией bin()
.
Синтаксис:
bin(number)
Аргументы:
- В
number
мы должны передать целочисленное число (int) для перевода его в двоичную систему исчисления.
Функция bin()
как результат возвращает переведенное число в двоичную систему в виде строки.
Метод bin()
не работает с числами с плавающей точкой: TypeError: 'float' object cannot be interpreted as an integer
Давайте рассмотрим примеры, я буду использовать везде в разных системах число: 5.
# Целые число
print(bin(5))
# Шестнадцатеричные числа
print(bin(0x5))
# Восьмеричные числа
print(bin(0o5))
# С отрицательным число
print(bin(-5))
# Возвращаемый результат: строка
print(type(bin(0o5)))
Результат:
>>> 0b101
>>> 0b101
>>> 0b101
>>> -0b101
>>> <class 'str'>
Если мы хотим удалить из функции первые два символа «0b», можно воспользоваться нарезкой строк.
binary_num = bin(10)
print(binary_num[2:])
Результат:
>>> 1011010
Функция bin() с объектом:
В функцию bin()
можно передать объект, но при этом передаваемый объект должен иметь метод __index__()
, который возвращает целое число.
class Total:
a = 10
b = 15
def __index__(self):
return self.a + self.b
x = Total() # Объект класса Total
print('Сумма чисел в двоичной системе:', bin(x))
Результат:
>>> Сумма чисел в двоичной системе: 0b11001