python 3.7打印二进制字符串显示奇怪的字符

时间:2019-04-24 02:26:39

标签: python-3.x binary hex

在python 3.7中,当我执行以下语句时:

print(b'\x80\x51\x01\x00')

我明白了

b'\x80Q\x01\x00'

那是为什么?

1 个答案:

答案 0 :(得分:1)

Python中的二进制字符串始终以b开头。

Q被解码是因为ascii中的\ x51或0x51是Q。

要打印二进制字符串,首先需要使用string.decode()对其进行解码:

print(b'\x51\x52\x53'.decode('ascii'))

对于您的字符串,由于0x80不是有效字符,因此无法将其解码为ASCII。 (ASCII仅上升到0x7F)

相关问题