6

我做了

>>> b0 = open('file','rb')

然后

>>> b0.read(10)

b'\xb8\xaaK\x1e^J)\xab_I'

我怎样才能将所有东西都打印为纯十六进制字节?我想

b'\xb8\xaa\x4b\x1e\x5e\x4a\x29\xab\x5f\x49'

(PS:可以打印漂亮吗?喜欢

B8 AA 4B 1E 5E 4A 29 AB 5F 49

或冒号分隔。)

4

1 回答 1

6
>>> s = b'\xb8\xaaK\x1e^J)\xab_I'
>>> ' '.join('{:02X}'.format(c) for c in s)
'B8 AA 4B 1E 5E 4A 29 AB 5F 49'

或者,稍微更简洁一点:

>>> ' '.join(map('{:02X}'.format, s))
'B8 AA 4B 1E 5E 4A 29 AB 5F 49'
于 2013-04-12T07:03:16.840 回答