您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用Python将字节反向AB CD转换为CD AB

使用Python将字节反向AB CD转换为CD AB

在Python 2中,二进制文件以字符串形式读取,因此字符串切片应轻松处理相邻字节的交换:

>>> original = '\xAD\xDE\xDE\xC0'
>>> ''.join([c for t in zip(original[1::2], original[::2]) for c in t])
'\xde\xad\xc0\xde'

在Python 3中,二进制文件以字节读取。仅需进行少量修改即可构建另一个字节数组:

>>> original = b'\xAD\xDE\xDE\xC0'
>>> bytes([c for t in zip(original[1::2], original[::2]) for c in t])
b'\xde\xad\xc0\xde'

您也可以在struct模块中使用<and和>endianess格式代码来获得相同的结果:

>>> struct.pack('<2h', *struct.unpack('>2h', original))
'\xde\xad\xc0\xde'

快乐字节交换:-)

python 2022/1/1 18:31:55 有219人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶