我如何让我的套接字代码发送多行



我正在尝试创建一个套接字服务器连接,向客户端发送手动输入命令。

我可以向它发送1个命令/行,但我无法让input()提示我输入第二个命令,然后发送它。我可以做一次,但不能做两次或更多次。

我尝试给它一个if语句和另一个while循环。两者都没有产生预期的结果。

import socket
import time
inputdata = input("Enter command: ")
test_data =  bytes(inputdata, encoding='utf-8')
s = socket.socket()
s.bind(('localhost', 667))
s.listen()
while True:
c, addr = s.accept()
if(test_data):
c.send(test_data)
time.sleep(.1)

如果我将input()放入循环中,我的代码就会挂起。

import socket
import time
inputdata = 0
#test_data =  bytes(inputdata)
s = socket.socket()
s.bind(('localhost', 667))
s.listen()
while True:
c, addr = s.accept()
inputdata = input("Enter command: ")
test_data =  bytes(inputdata)
if(test_data):
c.send(test_data)
time.sleep(.1)

我如何让我的代码发送超过1个输入()命令/行到客户端?

accept()不应该在循环中,因为它等待来自客户端的另一个连接。

import socket
import time
inputdata = 0
#test_data =  bytes(inputdata)
s = socket.socket()
s.bind(('localhost', 667))
s.listen()
c, addr = s.accept()
while True:
inputdata = input("Enter command: ")
test_data =  bytes(inputdata)
if(test_data):
c.send(test_data)
time.sleep(.1)

相关内容

最新更新