我在回车时收到\\ r \\ n而不是\ r \ n

时间:2015-05-29 14:57:36

标签: python sockets raspberry-pi carriage-return

项目使用套接字从连接客户端读取,直到没有更多字符要读取或接收到\ r \ n。以下是代码片段:

while True:
    ch = connection.recv(1)
    data += ch.decode('UTF-8')
    if data.endswith('\r\n') or not ch:
        data = data.replace('\r\n','')
        break

当使用Windows运行从客户端读取的服务器时,代码按预期工作。然而,当我尝试在运行rasbian的覆盆子pi上运行它时,它总是读取回车符号为' \\ r \\ n'。例如,当客户端发送:

-list_networks wlan0 5180<return>

产生一个如下字符串:

-list_networks wlan0 5180\\r\\n

这是为什么?因此,它不会被读作回车而被遗漏。我知道不同的操作系统返回不同的字符串以便回车,但是当我研究一下时,我没有找到关于这个字符串的任何信息。我错过了什么吗?建议和解释表示赞赏。

编辑:

忘记添加命令是通过telnet连接发送的。我希望能够通过telnet连接到套接字。输入一个命令,当按下回车键时,循环将识别并结束循环。

0 个答案:

没有答案