Python阻止readline转换为十六进制值
我正在使用readline命令获取十六进制值。但是,当我打印收到的数据时,它会将少数十六进制值转换为字符。 例如: 我希望它显示为Python阻止readline转换为十六进制值,python,python-3.x,Python,Python 3.x,我正在使用readline命令获取十六进制值。但是,当我打印收到的数据时,它会将少数十六进制值转换为字符。 例如: 我希望它显示为 b'\x06\x02\x41\x42\x4C\x00\x00\x00\x02' 如何实现这一点?您看到的是Python中ByTestString的表示,例如: >>> b'\x30\x31\x00' b'01\x00' 它将可打印字节显示为ascii符号,而不是相应的十六进制转义 我正在使用readline命令获取十六进制值 这里的“十六进制值
b'\x06\x02\x41\x42\x4C\x00\x00\x00\x02'
如何实现这一点?您看到的是Python中ByTestString的表示,例如:
>>> b'\x30\x31\x00'
b'01\x00'
它将可打印字节显示为ascii符号,而不是相应的十六进制转义
我正在使用readline命令获取十六进制值
这里的“十六进制值”只是一个字节序列(范围为0到255的数字)
如果要将所有字节显示为相应的十六进制值:
>>> import binascii
>>> binascii.hexlify(b'01\x00')
b'303100'
你能分享你的代码吗。查看它是否有助于我尝试使用数据\x06\x02\x41\x42\x4C\x00\x00\x00\x02,并使用带有open(“D:\\Test.txt,'r')的代码作为f:print f.readline()它返回了我正确的结果i-e\x06\x02\x41\x42\x4C\x00\x00\x00\x02请避免在注释中使用代码,编辑您的答案,我正在使用一个发送字节内容十六进制数据的终端。我正在使用串行读取行命令进行读取,当我这样做时,得到的结果是:b'\x06\x02ABL\x00\x00\x00\x02
>>> import binascii
>>> binascii.hexlify(b'01\x00')
b'303100'