在python 3.7中,当我执行以下语句时:
print(b'\x80\x51\x01\x00')
我明白了
b'\x80Q\x01\x00'
这是为什么?
Python中的二进制字符串始终以b开头。
Q被解码,因为ascii中的\ x51或0x51是Q.
要打印二进制字符串,首先需要使用string.decode()对其进行解码:
print(b'\x51\x52\x53'.decode('ascii'))
对于字符串,它不能解码为ASCII,因为0x80不是有效字符。 (ASCII仅上升到0x7F)