将ASCII字符转换为十六进制转义字符串
问题描述:
我正在从Python读取文件。我打开这个文件并使用'rb'来读取字节。当我看到他们,说:将ASCII字符转换为十六进制转义字符串
f.read(1)
它会输出这样的事情
b'\x50'
所以我的问题是,当我试图这样
f.read(24)
更长的字符串我这个:
b'R\x00S\x00S\x00Q\x00S\x00O\x00N\x00P\x00S\x00M\x00R\x00P\x00
你没有tice那里有ASCII个字符混入十六进制。我想让R显示为\ x52。
我该怎么做?
答
print(''.join('\\x%02x' % c for c in B))
用于什么?它仍然是一样的价值。 –
不是当试图将它提供给struct.unpack()时 –
是的,即使如此。 '>>> b'A'== b'\ x41'''True' –