相对之前文章介绍过的基于TCP的套接字的实现,udp是无链接的,先启动哪一端都不会报错,传输效率更快,适合做聊天室,但数据不会保证完整性
# 客户端:
import socket
client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)# 数据报协议=》udp协议
while True:
msg=input('>>>>')
client.sendto(msg.encode('utf-8'),("10.0.2.15",8081))
data,server_addr=client.recvfrom(1024)
print(data.decode('utf-8'),server_addr)
client.close()
# 服务端
import socket
server=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)# 数据报协议=》udp协议
server.bind(("127.0.0.1",8080))
data,client_addr=server.recvfrom(1024)
server.sendto(data.upper(),client_addr)
# print(data.decode('utf-8'))
server.close()
其实代码于套接字基于TCP的类似,下一个章节我将为大家讲解如何实现一个简单的聊天室~