【发布时间】:2016-09-15 22:46:08
【问题描述】:
我正在尝试以字符串转义方式将我在 python 中的二进制文件(一个 gzip 压缩的协议缓冲区对象)转换为十六进制字符串(例如 \xFA\x1C ..)。
我都试过了
repr(<mygzipfileobj>.getvalue())
还有
<mygzipfileobj>.getvalue().encode('string-escape')
在这两种情况下,我都会得到一个不是仅由十六进制字符组成的字符串。
\x86\xe3$T]\x0fPE\x1c\xaa\x1c8d\xb7\x9e\x127\xcd\x1a.\x88v ...
如何实现一致的十六进制转换,其中每个字节实际上都转换为 \xHH 格式? (其中 H 表示有效的十六进制字符 0-9A-F)
【问题讨论】:
-
您想要/需要在每个十六进制字节前面加上
\x还是输出0123AB7F而不是\x01\x23\xAB\x7F也可以?还是您更喜欢其他格式? -
我知道如何获得 0123AB7F 输出,我正在寻找的是实际的 \x01\x23\xAB\x7F 格式
标签: python string binary hex gzip