使用 Python socket 模块实现 TCP通信
下面是一个使用 Python socket 模块实现 TCP 通信的简单示例,其中包括一个服务器和一个客户端:
服务器端代码:
import socket # 创建一个TCP套接字对象 server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 绑定IP地址和端口号 server_address = ('localhost', 8888) server_socket.bind(server_address) # 监听客户端连接 server_socket.listen(1) print('等待客户端连接...') # 接受客户端连接请求 client_socket, client_address = server_socket.accept() print('客户端已连接:', client_address) # 接收客户端发送的数据 data = client_socket.recv(1024) print('接收到的数据:', data.decode('utf-8')) # 发送响应数据给客户端 response_data = 'Hello, pidancode.com!' client_socket.sendall(response_data.encode('utf-8')) # 关闭连接 client_socket.close() server_socket.close()
客户端代码:
import socket # 创建一个TCP套接字对象 client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 连接服务器 server_address = ('localhost', 8888) client_socket.connect(server_address) print('连接服务器成功!') # 发送数据给服务器 request_data = '皮蛋编程' client_socket.sendall(request_data.encode('utf-8')) # 接收服务器响应的数据 response_data = client_socket.recv(1024) print('接收到的数据:', response_data.decode('utf-8')) # 关闭连接 client_socket.close()
在运行以上代码之前,需要确保服务器端代码先于客户端代码运行。此外,为了演示方便,以上示例均在本地运行,IP 地址使用了 localhost。如果需要在不同的主机之间进行通信,则需要将 IP 地址修改为对应的 IP 地址。
相关文章