使用 Python socket 模块创建 TCP 客户端和服务器

2023-04-04 00:00:00 创建 客户端 模块

以下是一个简单的 Python socket TCP 服务器和客户端的示例代码。```
在这个示例中,服务器将接收来自客户端的消息,并将其打印到控制台上,同时向客户端发送一个简单的响应消息。

服务器端代码

import socket

HOST = ''  # 服务器主机名
PORT = 12345  # 监听端口号

# 创建 socket 对象
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
    # 绑定到指定的主机和端口
    s.bind((HOST, PORT))
    # 开始监听
    s.listen()
    print(f'服务器已启动,监听端口:{PORT}')
    while True:
        # 等待客户端连接
        conn, addr = s.accept()
        with conn:
            print(f'客户端已连接:{addr}')
            while True:
                # 接收客户端消息
                data = conn.recv(1024)
                if not data:
                    break
                # 打印消息到控制台
                print(f'接收到消息:{data.decode()}')
                # 发送响应消息
                conn.sendall(b'Hello from server!')

客户端代码

import socket

HOST = 'localhost'  # 服务器主机名
PORT = 12345  # 服务器监听端口号

# 创建 socket 对象
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
    # 连接到服务器
    s.connect((HOST, PORT))
    # 发送消息
    s.sendall(b'Hello from client!')
    # 接收响应消息
    data = s.recv(1024)

print(f'收到响应消息:{data.decode()}')

在这个示例中,我们创建了一个基于 TCP 协议的服务器和客户端。服务器监听指定的主机和端口,等待客户端连接。当一个客户端连接时,服务器将接收来自客户端的消息,并将其打印到控制台上,同时向客户端发送一个简单的响应消息。客户端连接到服务器,并发送一个简单的消息。然后客户端等待服务器响应,并将其打印到控制台上。

相关文章