什么是UDP:UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报。这与面向流字符的协议不同,如TCP,应用程序产生的全体数据与真正发送的单个IP数据报可能没有什么联系。
接收端是服务器(server),发送端是客户机(client)。
python中网络编程需要先import socket包:
import sys
import socket
为发送目的端开一个变量,保存其IP地址及端口,同时开一个变量保存自己本机IP地址,书写形式如下:('IP地址',端口号)
address=('192.168.1.39',8085) #set the self_address
addressto=('192.168.1.45',8085) #set the sendto_address
创建一个socket类的变量,然后将本机IP地址绑定到这个socket类中:
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(address)
只要生成了socket类的变量,就可以收到来自别的客户机发来的消息,如果需要往其他IP地址发送消息,本机只需要作为客户机向外发送就可以了,只需要一个s变量。
data, addr = s.recvfrom(1024) 从发送方接收数据,接收到的数据data为字符串类型,保存在data中,从对方发送过来的地址保存在addr中。1024表示一次最多接收1024个字节。
s.sendto(message,addressto) 向目的地为addressto的地址发送message。这样对方就能收到了,message的数据类型是字符串。
s.close()最后进行关闭。