Python TCP通讯发送Byte出现数据里面多出一上字符是怎么回事?

Python018

Python TCP通讯发送Byte出现数据里面多出一上字符是怎么回事?,第1张

txt="\x27\x88",这个是由两个转义字符构成的字符串

txt.encode()会使用utf-8编码方式将字符串编码为字节序列(bytes对象)。

utf-8编码的话,txt.encode()会返回3字节的字节序列:b'\x27\xc2\x88',因为对于字符'\x88',用utf-8编码后是2个字节b'\xc2\x88'。

所以,接收到的自然是3个字节的字节序列b'\x27\xc2\x88'。

要解码后才是原字符串,即:

b'\x27\xc2\x88'.decode()=='\x27\x88'的结果是True。

客户端收到数据。

最基本的基于tcp协议通信的过程客户端发,服务端收,服务端处理数据然后发,客户端收到服务端发了的反馈数据。

tcp协议在OSI七层协议中属于传输层,它上承用户层的数据收发,下启网络层、数据链路层、物理层。可以说很多安全数据的传输通信都是基于tcp协议进行的。