技术文章 > Python技术 >  Python基础教程 > 正文

python中UDP编程实现通信

小妮浅浅

我们知道想要实现数据之间的传递,会有用户和服务方的产生。由用户提供需求,服务方把成果反馈给用户。本篇就UDP编程在通信的过程分为两个部分:服务器端和客户端。下面我们就数据在不同端口传送的方法进行分析,大家一起看看它们在其中都有哪些操作的步骤吧。

1、服务器端

recvfrom()方法返回数据和客户端的地址与端口,这样,服务器收到数据后,直接调用sendto()就可以把数据用UDP发给客户端。

# coding:utf-8
import socket
# 创建套接字
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定地址和端口
addr = '127.0.0.1'
port = 9999
s.bind((addr,port))
print("Bind UDP on",port)
# 数据处理
while True:
    data, addr = s.recvfrom(1024)
    print("Receive data from %s:%s" % addr)
    s.sendto(b"Hello, %s!" % data, addr)

2、客户端

客户端使用UDP时,首先仍然创建基于UDP的Socket,然后,不需要调用connect(),直接通过sendto()给服务器发数据:

# coding:utf-8
import socket
addr = '127.0.0.1'
port = 9999
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
for data in [b'Hello', b'world!']:
    s.sendto(data,(addr, port))
    print(s.recv(1024).decode('utf-8'))
s.close()

以上就是python中UDP编程实现通信的方法,大家可以先就两种不同的端口进行学习,然后再分别尝试代码的运行部分。

免费视频教程
本教程部分素材来源于网络,版权问题联系站长!
相关文章
  五分钟搞定Python网络编程实现TCP和UDP连接
  python udp不能接收数据怎么解决?
  python UDP编程是什么意思?
相关视频章节
  Python控制语句之其他语句
  Python控制语句之循环语句
  Python控制语句之条件语句
  Python数据结构之字典
  Python数据结构之元组和集合
作者信息
推荐视频
视频教程分类