Python启动UDP服务,监听并接收客户端数据方式

 更新时间:2024年07月19日 16:20:16   作者:Lightning-py  
这篇文章主要介绍了Python启动UDP服务,监听并接收客户端数据方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Python启动UDP服务,监听并接收客户端数据

可以使用Python的socket库实现UDP协议的验证,以下是一个简单的示例代码:

服务器

[root@localhost python]# cat udp_server.py 
import socket

# 创建一个UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 绑定到本地 IP 和端口
local_addr = ('192.168.6.211', 8888)
udp_socket.bind(local_addr)

print('UDP server is listening...')

while True:
    # 接收数据
    data, addr = udp_socket.recvfrom(1024)
    print(f'Received data from {addr}: {data.decode()}')

    # 回复数据
    reply = 'Received: ' + data.decode()
    udp_socket.sendto(reply.encode(), addr)

[root@localhost python]#

客户端

[root@localhost python]# cat udp_server.py 
import socket

# 创建一个UDP socket
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

# 发送数据
remote_addr = ('192.168.6.211', 8888)
udp_socket.sendto('Hello, UDP!'.encode(), remote_addr)

# 接收数据
data, addr = udp_socket.recvfrom(1024)
print(f'Received data from {addr}: {data.decode()}')

# 关闭 socket
udp_socket.close()

[root@localhost python]#

以上代码创建了一个UDP socket,并绑定到本地的IP和端口8888。

接着使用recvfrom()方法接收数据,并使用sendto()方法发送数据。最后,关闭socket。

可以使用两个终端分别运行该程序,并观察数据的传输情况,从而验证UDP协议的可靠性。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python 直接赋值和copy的区别详解

    python 直接赋值和copy的区别详解

    这篇文章主要介绍了python 直接赋值和copy的区别详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • django admin 添加自定义链接方式

    django admin 添加自定义链接方式

    这篇文章主要介绍了django admin 添加自定义链接方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • 使用Python匹配中文数字的方法详解

    使用Python匹配中文数字的方法详解

    在处理中文文本时,经常需要识别或提取 中文数字,Python 的正则表达式(re 模块)可以高效地完成这一任务,本文将介绍 如何用 Python 匹配中文数字,需要的朋友可以参考下
    2026-04-04
  • 解决virtualenv -p python3 venv报错的问题

    解决virtualenv -p python3 venv报错的问题

    这篇文章主要介绍了解决virtualenv -p python3 venv报错的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • python实现汽车管理系统

    python实现汽车管理系统

    这篇文章主要为大家详细介绍了python实现汽车管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • Matplotlib之解决plt.savefig()保存多张图片有重叠的问题

    Matplotlib之解决plt.savefig()保存多张图片有重叠的问题

    这篇文章主要介绍了Matplotlib之解决plt.savefig()保存多张图片有重叠的问题,具有很好的参考价值,希望对大家有所帮助,
    2023-09-09
  • ML神器:sklearn的快速使用及入门

    ML神器:sklearn的快速使用及入门

    这篇文章主要介绍了ML神器:sklearn的快速使用及入门,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python爬虫实例扒取2345天气预报

    Python爬虫实例扒取2345天气预报

    本篇文章给大家详细分析了通过Python爬虫如何采集到2345的天气预报信息,有兴趣的朋友参考学习下吧。
    2018-03-03
  • Python超有趣实例通过冒泡排序来实现LOL厄斐琉斯控枪

    Python超有趣实例通过冒泡排序来实现LOL厄斐琉斯控枪

    冒泡排序是一种简单的排序算法,它也是一种稳定排序算法。其实现原理是重复扫描待排序序列,并比较每一对相邻的元素,当该对元素顺序不正确时进行交换。一直重复这个过程,直到没有任何两个相邻元素可以交换,就表明完成了排序
    2022-05-05
  • python获取指定路径下所有指定后缀文件的方法

    python获取指定路径下所有指定后缀文件的方法

    这篇文章主要介绍了python获取指定路径下所有指定后缀文件的方法,涉及Python针对文件与目录操作的相关技巧,需要的朋友可以参考下
    2015-05-05

最新评论