python xIe udp
时间: 2023-06-15 07:07:09 浏览: 144
UDP (User Datagram Protocol) 是一种无连接的传输层协议,与 TCP 不同,它不提供可靠的数据传输和错误恢复机制。在 Python 中,使用 socket 模块可以实现 UDP 协议的编程。
以下是一个简单的 Python UDP 服务器和客户端的示例代码:
UDP 服务器:
```python
import socket
SERVER_IP = '127.0.0.1'
SERVER_PORT = 5005
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind((SERVER_IP, SERVER_PORT))
while True:
data, addr = sock.recvfrom(1024)
print(f"Received message: {data.decode()} from {addr}")
```
UDP 客户端:
```python
import socket
SERVER_IP = '127.0.0.1'
SERVER_PORT = 5005
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
message = "Hello, server!"
sock.sendto(message.encode(), (SERVER_IP, SERVER_PORT))
```
在上述代码中,服务器使用 `socket.bind()` 函数将自己绑定到一个 IP 地址和端口号。当服务器接收到客户端发送的数据时,它会打印出数据和发送方的地址。
客户端使用 `socket.sendto()` 函数向服务器发送数据,其中第一个参数是一个字节串,需要使用 `encode()` 方法将字符串转换为字节串。第二个参数是服务器的 IP 地址和端口号。
注意,UDP 是无连接的,因此客户端可以在不事先连接服务器的情况下发送数据。服务器接收到数据后,发送方的地址信息将包含在返回的消息中,因此客户端可以从中提取该信息。
阅读全文