Python--网络编程-----基于UDP协议的套接字
Posted xudachen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python--网络编程-----基于UDP协议的套接字相关的知识,希望对你有一定的参考价值。
服务端:
1 from socket import * 2 3 server = socket(AF_INET, SOCK_DGRAM) 4 server.bind((‘127.0.0.1‘, 8080)) 5 6 while True: 7 data, client_addr = server.recvfrom(1024) 8 print(data, client_addr) 9 10 server.sendto(data.upper(), client_addr) 11 12 server.close()
客户端:
1 from socket import * 2 3 client = socket(AF_INET, SOCK_DGRAM) 4 5 while True: 6 msg = input(">>:").strip() 7 client.sendto(msg.encode(‘utf-8‘), (‘127.0.0.1‘, 8080)) 8 9 data, server_addr = client.recvfrom(1024) 10 print(data, server_addr) 11 12 client.close()
先启动服务端,再启动客户端,在客户端输入小写字母abc,
客户端运行结果为:
1 >>:abc 2 b‘ABC‘ (‘127.0.0.1‘, 8080) 3 >>:
服务端运行结果为:
1 b‘abc‘ (‘127.0.0.1‘, 55255)
这就实现了基于udp协议的简单套接字程序
基于udp协议的套接字能够发空:
在客户端输入空,
客户端运行结果为:
1 >>: 2 b‘‘ (‘127.0.0.1‘, 8080) 3 >>: 4 b‘‘ (‘127.0.0.1‘, 8080) 5 >>:
udp就算发送数据为空,但是udp是数据报协议,数据报中还包含有ip端口信息,所以说数据报不为空
以上是关于Python--网络编程-----基于UDP协议的套接字的主要内容,如果未能解决你的问题,请参考以下文章