我有一个short / int16数组,我需要转换为填充的16位字符串(?)。我尝试过使用struct:
struct.pack('>H', 545)
我得到了:
'\x02!'
我需要格式化为16位的东西。
有谁知道怎么做?我很困惑,对二进制系统几乎一无所知。
干杯
答案 0 :(得分:3)
16位。 '\x02'
为8位,!
为其他8位。
你在寻找'0000001000100001'
吗?如果是这样,您可以使用format
函数执行此操作:
>>> format(545, '016b')
'0000001000100001'
0
表示"填充零",16
表示"显示至少16位",b
表示二进制
如果您不需要零填充,则可以使用bin
:
>>> bin(545)
'0b1000100001'
>>> bin(545)[2:]
'1000100001'