Python UDP 通讯程序:简单易懂的代码示例
以下是一个简单的 UDP 通讯程序,通过 socket 模块实现:
import socket
# 创建socket对象
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定本地端口
udp_socket.bind(('localhost', 8888))
# 接收数据
while True:
data, addr = udp_socket.recvfrom(1024)
print('Received from ' + addr + ': ' + data.decode())
# 回传数据
udp_socket.sendto('Hello, ' + addr, addr)
# 关闭socket对象
udp_socket.close()
在该程序中,首先创建了一个 UDP socket 对象,并将其绑定到本地端口 8888 上。然后通过一个无限循环接收数据,每次接收到数据后打印出来,并回传一个简单的问候语。最后关闭 socket 对象。
我们可以通过另一个程序向该程序发送数据,例如:
import socket
# 创建socket对象
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 发送数据
udp_socket.sendto('Hello, server!'.encode(), ('localhost', 8888))
# 接收回传数据
data, addr = udp_socket.recvfrom(1024)
print('Received from ' + addr + ': ' + data.decode())
# 关闭socket对象
udp_socket.close()
该程序通过 socket 对象发送了一条数据 'Hello, server!' 到本地端口 8888 上,并等待接收回传数据。接收到数据后打印出来,并关闭 socket 对象。
这两个程序可以相互通讯,即第二个程序发送数据到第一个程序后,第一个程序会回传一条问候语。
原文地址: https://www.cveoy.top/t/topic/oru2 著作权归作者所有。请勿转载和采集!