我可以找到很多线程告诉我如何在十六进制值之间进行转换。我不想转换任何东西。相反,我想以十六进制表示形式打印已有的字节,例如
byteval = '\x60'.encode('ASCII')
print(byteval) # b'\x60'
Run Code Online (Sandbox Code Playgroud)
相反,当我这样做时,我得到:
byteval = '\x60'.encode('ASCII')
print(byteval) # b'`'
Run Code Online (Sandbox Code Playgroud)
因为`是我的字节对应的ASCII字符。
澄清一下: type(byteval) 是字节,而不是字符串。
>>> print("b'" + ''.join('\\x{:02x}'.format(x) for x in byteval) + "'")
b'\x60'
Run Code Online (Sandbox Code Playgroud)