编写Python套接字程序可以使用Python的内置socket库。下面是一个简单的示例代码,演示了如何创建一个简单的服务器和客户端套接字连接。
服务器端代码:
import socket
# 创建一个服务器套接字
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定IP地址和端口号
server_socket.bind(('localhost', 12345))
# 监听连接
server_socket.listen(1)
print("服务器已启动,等待连接...")
# 接受连接请求
client_socket, address = server_socket.accept()
print("已连接:", address)
# 接收数据并发送响应
while True:
data = client_socket.recv(1024).decode()
if not data:
break
print("接收到消息:", data)
response = "收到消息:" + data
client_socket.send(response.encode())
# 关闭连接
client_socket.close()
server_socket.close()
客户端代码:
import socket
# 创建一个客户端套接字
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
client_socket.connect(('localhost', 12345))
# 发送数据并接收响应
message = "Hello, Server!"
client_socket.send(message.encode())
response = client_socket.recv(1024).decode()
# 打印服务器的响应
print("服务器响应:", response)
# 关闭连接
client_socket.close()
上述代码中,服务器端代码创建了一个服务器套接字,绑定IP地址和端口号,并监听连接请求。当有客户端连接请求到达时,接受连接,然后循环接收客户端发送的数据,发送响应。
客户端代码创建了一个客户端套接字,连接服务器,并发送数据给服务器。然后接收服务器的响应。
注意,这只是一个简单的示例,实际编写Python套接字程序时,可能需要处理更多的异常情况和业务逻辑。