编写一个python 的udp client和server,端口号5009
时间: 2024-03-14 14:48:08 浏览: 125
下面是一个简单的Python UDP服务器和客户端的示例。该示例使用端口号5009。
UDP服务器:
```python
import socket
# 创建UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定端口号
udp_socket.bind(('localhost', 5009))
while True:
# 接收数据
data, addr = udp_socket.recvfrom(1024)
# 打印接收到的数据和发送方的地址
print(f'Received data: {data.decode()} from {addr}')
# 发送响应
response = 'Hello, client!'
udp_socket.sendto(response.encode(), addr)
```
UDP客户端:
```python
import socket
# 创建UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 发送数据
message = 'Hello, server!'
udp_socket.sendto(message.encode(), ('localhost', 5009))
# 接收响应
response, addr = udp_socket.recvfrom(1024)
# 打印响应和服务器的地址
print(f'Received response: {response.decode()} from {addr}')
```
在以上代码中,服务器和客户端都使用了`socket.socket()`函数创建了一个UDP socket。UDP服务器使用`bind()`函数绑定了端口号5009,然后使用`recvfrom()`函数接收客户端发送的数据。一旦接收到数据,服务器会打印出数据和客户端的地址,并使用`sendto()`函数向客户端发送响应。
UDP客户端使用`sendto()`函数向服务器发送数据,并使用`recvfrom()`函数接收服务器的响应。一旦接收到响应,客户端会打印出响应和服务器的地址。
阅读全文