如何打印python Byte变量?

时间:2018-08-17 15:49:29

标签: python-3.x

我有这个字节变量

testByte = b"\x02\x00\x30\x03\x35"

我想打印出来

我尝试过:

listTestByte = list(testByte)

但是,我得到

  

[2,0,48,3,35]

我希望它是

  

[2,0,30,3,35]

1 个答案:

答案 0 :(得分:2)

您拥有的是hexadecimal值。因此,基本上您应该得到的是什么。 (除了您应该得到[2, 0, 48, 3, 53],而不是[2, 0, 48, 3, 35]。)

如果您希望列表具有十六进制的内容,则可以尝试将其转换回十六进制。

testByte = b"\x02\x00\x30\x03\x35"
listTestByte = list(testByte)
print(listTestByte)             # [2, 0, 48, 3, 53]
listTestByteAsHex = [int(hex(x).split('x')[-1]) for x in listTestByte]
print(listTestByteAsHex)        # [2, 0, 30, 3, 35]

或使用字符串操作,根据您的目的在“ \ x”处拆分。