我有一个二进制文件要读取,我想以适当的十六进制形式显示结果。 代码如下:
file=open('myfile.chn', 'rb')
while 1:
b=fic.readline(1)
print(b)
file.close()
结果如下:
b'\xff'
b'\xff'
b'\x01'
b'\x00'
.
.
如何更改结果如下:
FF
FF
01
00
.
.
答案 0 :(得分:5)
"%02X" % ord(b'\xff')
将返回字符串'FF'
。
答案 1 :(得分:2)
满足您保持领先零的要求:
>>> import binascii
>>> binascii.hexlify(b'\x0f').decode().upper()
'0F'
也可以连续使用多个字节:
>>> binascii.hexlify(b'\xff\x01\x00\xaf').decode().upper()
'FF0100AF'