Выведите двоичный файл, затем отрицайте без дополнения в Python
Я новичок в Python и пытался сделать что-то вроде этого:
a=23
"{0:b}".format(a)
---> '10111'
тогда я хочу отрицать это, БЕЗ тех, кто дополняет, результат должен быть '01000', но ничего не работает
во-вторых, я должен был бы заполнить левую сторону нулями, я нашел что-то вроде
"{0:12b}".format(a)
' 10111'
но это только делает строку длиннее, заполняя ее пробелами
РЕДАКТИРОВАТЬ: идеальное решение для меня будет
"{0:12b}".format(a)
'000000010110'
"{0:12b}".format(~a)
'111111101001'
(что, конечно, не работает таким образом)
1 ответ
Решение
Положить 0
напротив 12
чтобы дополнить вывод нулями.
In [1]: "{0:012b}".format(a)
Out[1]: '000000010111'
В случае с компом, вы можете выполнить строковые манипуляции или математический способ:
In [2]: "{0:012b}".format(2**12-1-a)
Out[2]: '111111101000'
Просто измените 2**12
на количество цифр, которые вы хотите отобразить