二进制文字到python中的二进制字符串转换

use*_*378 -4 python string binary literals

我想将像0b01011这样的二进制文字转换为二进制字符串,如0101101101.我该怎么去这里

这里假设A = 81(十六进制)

>>> a = bin(int(str('A'),16))
>>> print a 
Run Code Online (Sandbox Code Playgroud)

返回0b1010,我想要10000001(二进制字符串)

Joh*_*024 5

使用python的新字符串处理:

>>> print '{:08b}'.format(81)
01010001

>>> print '{:08b}'.format(ord('A'))
01000001
Run Code Online (Sandbox Code Playgroud)

'08'指定输出大小为8,用零填充,因此默认情况下,这显示整个字节.如果没有零,则用空格填充:

>>>  print '{:8b}'.format(ord('A'))
 1000001
Run Code Online (Sandbox Code Playgroud)

没有'8',输出字符串只有所需的大小:

>>> print '{:b}'.format(ord('A'))
1000001
Run Code Online (Sandbox Code Playgroud)