Python udp网络程序实现发送、接收数据功能示例


Posted in Python onDecember 09, 2019

本文实例讲述了Python udp网络程序实现发送、接收数据功能。分享给大家供大家参考,具体如下:

1. udp网络程序-发送数据

创建一个基于udp的网络程序流程很简单,具体步骤如下:

  • 创建客户端套接字
  • 发送/接收数据
  • 关闭套接字

Python udp网络程序实现发送、接收数据功能示例

代码如下:

#coding=utf-8

from socket import *

# 1. 创建udp套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)

# 2. 准备接收方的地址
# '192.168.1.103'表示目的ip地址
# 8080表示目的端口
dest_addr = ('192.168.1.103', 8080) # 注意 是元组,ip是字符串,端口是数字

# 3. 从键盘获取数据
send_data = input("请输入要发送的数据:")

# 4. 发送数据到指定的电脑上的指定程序中
udp_socket.sendto(send_data.encode('utf-8'), dest_addr)

# 5. 关闭套接字
udp_socket.close()

运行现象:

在Ubuntu中运行脚本:

Python udp网络程序实现发送、接收数据功能示例

在windows中运行“网络调试助手”:

Python udp网络程序实现发送、接收数据功能示例

2. udp网络程序-发送、接收数据

#coding=utf-8

from socket import *

# 1. 创建udp套接字
udp_socket = socket(AF_INET, SOCK_DGRAM)

# 2. 准备接收方的地址
dest_addr = ('192.168.236.129', 8080)

# 3. 从键盘获取数据
send_data = input("请输入要发送的数据:")

# 4. 发送数据到指定的电脑上
udp_socket.sendto(send_data.encode('utf-8'), dest_addr)

# 5. 等待接收对方发送的数据
recv_data = udp_socket.recvfrom(1024) # 1024表示本次接收的最大字节数

# 6. 显示对方发送的数据
# 接收到的数据recv_data是一个元组
# 第1个元素是对方发送的数据
# 第2个元素是对方的ip和端口
print(recv_data[0].decode('gbk'))
print(recv_data[1])

# 7. 关闭套接字
udp_socket.close()

python脚本:

Python udp网络程序实现发送、接收数据功能示例

网络调试助手截图:

Python udp网络程序实现发送、接收数据功能示例

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python和GO语言实现的消息摘要算法示例
Mar 10 Python
Python中__slots__属性介绍与基本使用方法
Sep 05 Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
Oct 26 Python
pygame游戏之旅 计算游戏中躲过的障碍数量
Nov 20 Python
python中 * 的用法详解
Jul 10 Python
django框架cookie和session用法实例详解
Dec 10 Python
Python随机数函数代码实例解析
Feb 09 Python
python手写均值滤波
Feb 19 Python
Python学习笔记之装饰器
Aug 06 Python
pytorch 使用半精度模型部署的操作
May 24 Python
基于Python实现将列表数据生成折线图
Mar 23 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 Python
python3 tcp的粘包现象和解决办法解析
Dec 09 #Python
python绘制规则网络图形实例
Dec 09 #Python
Spring实战之使用util:命名空间简化配置操作示例
Dec 09 #Python
python爬虫模拟浏览器的两种方法实例分析
Dec 09 #Python
Python二次规划和线性规划使用实例
Dec 09 #Python
Python Numpy数组扩展repeat和tile使用实例解析
Dec 09 #Python
如何将 awk 脚本移植到 Python
Dec 09 #Python
You might like
CI(CodeIgniter)框架介绍
2014/06/09 PHP
ThinkPHP中redirect用法分析
2014/12/05 PHP
php中namespace use用法实例分析
2016/01/22 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
查询绑定数据岛的表格中的文本并修改显示方式的js代码
2009/12/15 Javascript
jQuery EasyUI 中文API Button使用实例
2010/04/14 Javascript
ASP.NET jQuery 实例3 (在TextBox里面阻止复制、剪切和粘贴事件)
2012/01/13 Javascript
javascript 中that的含义示例介绍
2014/05/14 Javascript
零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
2014/12/20 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
bootstrap模态框远程示例代码分享
2017/05/22 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
vue中如何实现pdf文件预览的方法
2018/07/12 Javascript
vue动态绑定class的几种常用方式小结
2019/05/21 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
Python二分法搜索算法实例分析
2015/05/11 Python
python字典基本操作实例分析
2015/07/11 Python
python使用pandas实现数据分割实例代码
2018/01/25 Python
python中subprocess批量执行linux命令
2018/04/27 Python
python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例
2020/03/04 Python
PyTorch中的C++扩展实现
2020/04/02 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
2021/01/05 Python
CSS3中的display:grid,网格布局介绍
2019/10/30 HTML / CSS
瑜伽灵感珠宝:Satya Jewelry
2018/01/06 全球购物
Linux机考试题
2015/10/16 面试题
材料物理专业大学毕业生求职信
2013/10/15 职场文书
成品仓管员岗位职责
2013/12/11 职场文书
导师推荐信范文
2014/05/09 职场文书
高中毕业典礼演讲稿
2014/09/09 职场文书
公司奖励通知
2015/04/21 职场文书
学生会工作感言
2015/08/07 职场文书
职工趣味运动会开幕词
2016/03/04 职场文书
浅谈Python类的单继承相关知识
2021/05/12 Python
python必学知识之文件操作(建议收藏)
2021/05/30 Python
InterProcessMutex实现zookeeper分布式锁原理
2022/03/21 Java/Android