Как я могу преобразовать целое число в двоичный в Python - PullRequest
3 голосов
/ 12 марта 2010

В Ruby я делаю так

asd = 123
asd = '%b' % asd # => "1111011"

Ответы [ 3 ]

7 голосов
/ 12 марта 2010

Вы также можете выполнить форматирование строки, которое не содержит '0b':

>>> '{:b}'.format(123)            #{0:b} in python 2.6
'1111011'
7 голосов
/ 12 марта 2010

в Python> = 2,6 с bin():

asd = bin(123) # => '0b1111011'

Чтобы удалить ведущий 0b, достаточно взять подстроку bin(123)[2:].

бен (х)
Преобразовать целое число в двоичную строку. Результатом является правильное выражение Python. Если x не является int-объектом Python, он должен определить метод __index__(), который возвращает целое число.

Новое в версии 2.6.

0 голосов
/ 12 марта 2010

bin () работает, как упоминал Феликс. Для полноты вы можете пойти другим путем, как хорошо.

>>> int('01101100',2)
108
>>> bin(108)
'0b1101100'
>>> bin(108)[2:]
'1101100'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...