【问题标题】:How can I create a bytes object in python? [closed]如何在 python 中创建字节对象? [关闭]
【发布时间】:2013-11-05 23:52:02
【问题描述】:

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

【问题讨论】:

    标签: python-3.x binary byte


    【解决方案1】:

    如果你想要b'1010110000000010',请使用bytes 或str.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'
    

    【讨论】:

      猜你喜欢
      • 2018-10-19
      • 1970-01-01
      • 1970-01-01
      • 2015-01-23
      • 2018-02-01
      • 2013-02-09
      • 2013-11-10
      • 2014-01-06
      • 1970-01-01
      相关资源
      最近更新 更多