发
发送数据的流程
1.创建套接字
2.发送数据
3.关闭
import socket
def main():
#创建UDP的套接字
socket_name = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#绑定本地信息
socket_name.bind(“”,7889)
while True:
send_Data = input(“请输入要发送的内容:”)
#可以使用套接字收发数据
socket_name.sendto(send_Data.encode(“utf-8”),(“192.168.25.128”,8080))
#关闭套接字
socket_name.close()
if name==”main“:
main()
如果不绑定端口号
第一次发默认操作系统会分配给一个端口
发数据如果不关闭进程则使用一个端口
如果关闭进程再开启则更换了端口(1024~65535)
收
接受数据的流程
1.创建套接字
2.绑定本地自己的IP和端口(IP为空)
3.接收数据
4.显示(非必填)
5.关闭
import socket
def main():
#1.创建套接字
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#2.绑定一个本地信息
local_add = (“”,7788)
udp_socket.bind(local_add)
#3.接受数据
recv_data = udp_socket.recvfrom(1020)
#recv_data这个变量中存储的是一个元组(数据,(ip,port))
recv_message = recv_data[0] # 存储接收到的数据
recv_addr = recv_data[1] # 存储发送发的地址信息
#4.打印接收到的数据
print(“%s:%s” % (str(recv_addr),recv_message.decode(“utf-8”)))
#5.关闭套接字
udp_socket.close()
if name == “main“:
main()
如果一个端口被占用,不能再被使用
