-1

好的,我想将二进制字符串'1010110000000010'转换为bytesPython 3.3.2 中的对象。有谁知道我该怎么做?谢谢!

4

1 回答 1

0

如果需要b'1010110000000010',请使用bytesstr.encode

>>> bytes('1010110000000010', encoding='ascii')
b'1010110000000010'
>>> '1010110000000010'.encode('ascii')
b'1010110000000010'
>>> '1010110000000010'.encode() # can omit encoding (default: utf-8)
b'1010110000000010'

如果需要b'\xac\x02',请使用bytes转换后的整数(使用int以 2 为底的整数),或者struct.pack

>>> bytes(int(b[i:i+8], 2) for i in range(0, len(b), 8))
b'\xac\x02'

>>> import struct
>>> b = '1010110000000010'
>>> b''.join(struct.pack('B', int(b[i:i+8], 2)) for i in range(0, len(b), 8))
b'\xac\x02'
于 2013-10-27T05:21:32.500 回答