【问题标题】:How to change bits in byte with python? [duplicate]如何用python更改字节中的位? [复制]
【发布时间】:2014-07-03 10:34:22
【问题描述】:

我有.bmp 图片,我需要用它做一些隐写术。

对于此操作,我必须将.bmp 转换为字节列表,然后对位进行一些更改。

我使用open()"rb" 参数来制作字节列表,然后使用'{0:08b}'.format(mybyte) 将每个字节转换为字符串。

我的问题是如何将这个字节的字符串表示形式转换回字节?也许有一些更快或更正确的方法来处理位?

【问题讨论】:

标签: python io type-conversion bits


【解决方案1】:

int 构造函数可以很容易地做到这一点:

>>> s = '{0:08b}'.format(42)
>>> s
'00101010'
>>> int(s, 2)
42

【讨论】:

    【解决方案2】:

    使用binascii 模块。

    例如:

    binascii.a2b_hex('A0')
    

    【讨论】:

      猜你喜欢
      • 2014-02-10
      • 1970-01-01
      • 2011-09-07
      • 1970-01-01
      • 1970-01-01
      • 2020-03-17
      • 1970-01-01
      • 1970-01-01
      • 2014-10-07
      相关资源
      最近更新 更多