手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

python TCP通信

时间:2024-10-12 17:28:42

1、第一步:打开python IDE,新建一个py文件,输入代码,然后另存为TCPServer.py。这个程序基本功能是建立一个TCP服务器,等待客户端发送程序,然后将接收的内容以大写字母的形式俱蒉檑诟回传。localhost就是本地服务器的地址,用于测试,一般为127.0.0.1。import socketserverclass MyTCPHandler(socketserver.BaseRequestHandler): def handle(self): # self.request is the TCP socket connected to the client self.data = self.request.recv(1024).strip() print("{} wrote:".format(self.client_address[0])) print(self.data) # just send back the same data, but upper-cased self.request.sendall(self.data.upper())if __name__ == "__main__": HOST, PORT = "localhost", 9999 server = socketserver.TCPServer((HOST, PORT), MyTCPHandler) server.serve_forever()

python TCP通信

2、第二步:点击IDE菜单栏的“Run”->“Run Module F5”,或者直接按“F5”快捷键执行TCP服务器程序。

python TCP通信

3、第三步:编写客户端程序,使用IDE新建一个新的py文件,输入下面的代码。该客户端程序需要通过命令汉参数传递数据(sys.argv[1:]指示第一行参数),地址也是用户测试的IP哪纳紧萄地址(一般为127.0.0.1),端口设置与服务器一直,也是9999 。程序将命令行参数发送给服务器,然后将回传的数据回显。import socketimport sysHOST, PORT = "localhost", 9999data = " ".join(sys.argv[1:])with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: sock.connect((HOST, PORT)) sock.sendall(bytes(data + "\n", "utf-8")) received = str(sock.recv(1024), "utf-8")print("Sent: {}".format(data))print("Received: {}".format(received))

python TCP通信

4、第四步:保存客户端程序为TCPClient.py,记住保存的目录,后面会用到。

python TCP通信

5、第五步:打开win10的CMD程序,将目录切换至TCPClient.py所在目录。

python TCP通信

6、第6步:使用python TCPClient.py Hello world调用客户端程序,可以看到程序运行后显示:Sent: Hello worldReceived:HELLO WORLD与此同时,服务器程序也作出相应,收到127.0.0.1的内容。

python TCP通信
python TCP通信

7、该示例程序的客户端运行一次后便自动退出,而服务器程序则一直处于激活状态,可以通过再次调用TCPClient.py程序再次发送数据,服务器也会作出相应。需要结束服务器程序可以使用Ctrl+C。

python TCP通信
© 手抄报圈