VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • Python Socket实现简单TCP Server/client功能示例

在Python中,使用socket库可以很容易地实现简单的TCP服务器和客户端功能。以下是一个基本的示例,展示了如何创建一个TCP服务器和一个TCP客户端。
 
### TCP服务器
 
TCP服务器的主要任务是监听来自客户端的连接请求,接受连接,然后处理数据交换。
 
import socket
 
def tcp_server(host='127.0.0.1', port=12345):
    # 创建socket对象
    server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
   
    # 绑定地址和端口号
    server_socket.bind((host, port))
   
    # 监听连接
    server_socket.listen()
    print(f"Server is listening on {host}:{port}")
   
    # 接受客户端连接
    client_socket, addr = server_socket.accept()
    print(f"Connected by {addr}")
   
    # 接收数据
    data = client_socket.recv(1024).decode('utf-8')
    print(f"Received: {data}")
   
    # 发送数据
    client_socket.sendall("Hello from server!".encode('utf-8'))
   
    # 关闭连接
    client_socket.close()
    server_socket.close()
 
if __name__ == "__main__":
    tcp_server()
 
### TCP客户端
 
TCP客户端的主要任务是连接到服务器,发送数据,并接收来自服务器的响应。
 
import socket
 
def tcp_client(server_host='127.0.0.1', server_port=12345):
    # 创建socket对象
    client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
   
    # 连接到服务器
    client_socket.connect((server_host, server_port))
   
    # 发送数据
    client_socket.sendall("Hello from client!".encode('utf-8'))
   
    # 接收数据
    data = client_socket.recv(1024).decode('utf-8')
    print(f"Received: {data}")
   
    # 关闭连接
    client_socket.close()
 
if __name__ == "__main__":
    tcp_client()
 
### 运行说明
 
1. 首先,运行TCP服务器代码。它将监听本地主机的12345端口。
2. 然后,运行TCP客户端代码。它将连接到服务器,并发送一条消息。
3. 服务器将接收客户端的消息,打印出来,然后发送一条响应消息给客户端。
4. 客户端将接收服务器的响应消息,打印出来,并关闭连接。
5. 服务器也将关闭连接。
 
注意:这个示例是非常基础的,它只处理了一个客户端的连接。在实际应用中,服务器通常需要能够同时处理多个客户端的连接,这通常涉及到多线程或多进程编程。此外,为了增强代码的健壮性,还需要添加错误处理和异常捕获机制。
最后,如果你对python语言还有任何疑问或者需要进一步的帮助,请访问https://www.xin3721.com 本站原创,转载请注明出处:https://www.xin3721.com/Python/python50238.html



相关教程