python中UDP编程实现通信
2023-03-20 15:26:36 时间
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
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()
我们知道想要实现数据之间的传递,会有用户和服务方的产生。由用户提供需求,服务方把成果反馈给用户。本篇就UDP编程在通信的过程分为两个部分:服务器端和客户端。
以上就是python中UDP编程实现通信的方法,大家可以先就两种不同的端口进行学习,然后再分别尝试代码的运行部分。
相关文章
- Python中的函数与方法 以及Bound Method和Unbound Method
- 一文贯通python文件读取
- Python 中的异步编程:Asyncio
- 7个你现在就该学习Python的理由
- 提高Python运行效率的六个窍门
- Python数据科学:神经网络
- 一篇文章看懂大数据分析就业前景及职能定位
- R和Python中的文本挖掘:8个入门小贴士
- 告诉你为什么Python有点慢,但我却无所谓?
- 专注学习DevOps编程语言Top 5推荐
- Python发送邮件脚本
- Python多进程并行编程实践: mpi4py 的使用
- Python语言在未来的发展前景
- Python vs Ruby: 谁是最好的 web 开发语言?
- Python对Ruby:谁在Web开发领域更胜一筹?
- Python一行代码完成并行任务
- Python开发者2017应该关注的七个类库
- python爬虫入门基本知识
- 在终端中优雅地编写Python
- Python机器学习实战:信用卡欺诈检测