Python实现基于socket的udp传输与接收功能详解


Posted in Python onNovember 15, 2019

本文实例讲述了Python实现基于socket的udp传输与接收功能。分享给大家供大家参考,具体如下:

udp的传输与接收

windows网络调试助手下载:https://pan.baidu.com/s/1IwBWeAzGUO1A3sCWl20ssQ
提取码:68gr

或者点击此处本站下载

一.基本用法

1.创建套接字

udp_socket = socket.socket(socket.AF_INET,cosket.SOCK_DGRAM)
localaddr = ("",port)
udp_socket.bind(localaddr)

2.使用套接字收发数据

udp_socket.sendto("xxxx").encode("utf-8"),("ip",port)
udp_socket.recvfrom(1024)

3.关闭套接字

udp_socket.close()

二.发送数据流程

  • 1.创建套接字
  • 2.发送数据
  • 3.关闭
import socket
def main():
  # 创建一个套接字
  udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  while True:
    # 从键盘获取数据
    send_data = input("请输入要发送的数据:")
    # 退出函数
    if send_data == "exit":
      break
    # 可以使用套接字收发数据,此时未绑定发送的端口号,系统每次会随机分配一个
    # udp_socket.sendto("hahaha",对方的IP和port)
    # udp_socket.sendto(b"lalala123",("172.17.3.97",8080))
    udp_socket.sendto(send_data.encode("gbk"),("172.17.3.97",8080)) #由于接收是在Windows上,而Windows中默认编码为gbk
  # 关闭套接字
  udp_socket.close()
if __name__ == '__main__':
  main()

Python实现基于socket的udp传输与接收功能详解
Python实现基于socket的udp传输与接收功能详解
Python实现基于socket的udp传输与接收功能详解
Python实现基于socket的udp传输与接收功能详解

三.接收数据流程

  • 1.创建套接字
  • 2.绑定本地信息(ip和port)
  • 3.接收数据
  • 4.关闭
import socket
def main():
  # 1创建套接字
  udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
  # 2.绑定一个本地信息
  localaddr = ("",7788) # 必须绑定自己电脑IP和port
  udp_socket.bind(localaddr)
  # 3.接收数据
  while True:
    recv_data = udp_socket.recvfrom(1024)
    # recv_data存储元组(接收到的数据,(发送方的ip,port))
    recv_msg = recv_data[0] # 信息内容
    send_addr = recv_data[1] # 信息地址
    # 4.打印接收到的数据
    # print(recv_data)
    print("信息来自:%s 内容是:%s" %(str(send_addr),recv_msg.decode("gbk")))
  # 5.退出套接字
  udp_socket.close()
if __name__ == "__main__":
  main()

运行此程序
Python实现基于socket的udp传输与接收功能详解

在网络调试助手中发送消息

发送三次“你好”
Python实现基于socket的udp传输与接收功能详解

发送三次“hello”
Python实现基于socket的udp传输与接收功能详解

回到pycharm查看信息
Python实现基于socket的udp传输与接收功能详解

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

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

Python 相关文章推荐
Python translator使用实例
Sep 06 Python
浅析python 中__name__ = '__main__' 的作用
Jul 05 Python
Python简单日志处理类分享
Feb 14 Python
django创建自定义模板处理器的实例详解
Aug 14 Python
Python快速查找list中相同部分的方法
Jun 27 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
Sep 13 Python
python中dir()与__dict__属性的区别浅析
Dec 10 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
python增加图像对比度的方法
Jul 12 Python
Python三元运算与lambda表达式实例解析
Nov 30 Python
Python读取VOC中的xml目标框实例
Mar 10 Python
如何用Python绘制3D柱形图
Sep 16 Python
python根据文本生成词云图代码实例
Nov 15 #Python
解决django后台管理界面添加中文内容乱码问题
Nov 15 #Python
python中的TCP(传输控制协议)用法实例分析
Nov 15 #Python
Django admin禁用编辑链接和添加删除操作详解
Nov 15 #Python
django实现类似触发器的功能
Nov 15 #Python
Python socket实现的文件下载器功能示例
Nov 15 #Python
Django通过dwebsocket实现websocket的例子
Nov 15 #Python
You might like
PHP5.3.1 不再支持ISAPI
2010/01/08 PHP
简单的PHP多图上传小程序代码
2011/07/17 PHP
php curl 伪造IP来源的实例代码
2012/11/01 PHP
最常用的8款PHP调试工具
2014/07/06 PHP
ThinkPHP登录功能的实现方法
2014/08/20 PHP
php计算一个文件大小的方法
2015/03/30 PHP
学习php设计模式 php实现状态模式
2015/12/07 PHP
我整理的PHP 7.0主要新特性
2016/01/07 PHP
php使用curl代理实现抓取数据的方法
2017/02/03 PHP
PHP用户注册邮件激活账户的实现代码
2017/05/31 PHP
PHP检查网站是否宕机的方法示例
2017/07/24 PHP
php ajax数据传输和响应方法
2018/08/21 PHP
php 将json格式数据转换成数组的方法
2018/08/21 PHP
javascript之水平横向滚动歌词同步的应用
2007/05/07 Javascript
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
浅谈JavaScript对象与继承
2016/07/10 Javascript
vue里面父组件修改子组件样式的方法
2018/02/03 Javascript
解决bootstrap模态框数据缓存的问题方法
2018/08/10 Javascript
Python简单进程锁代码实例
2015/04/27 Python
python实现俄罗斯方块游戏
2020/03/25 Python
在python中利用KNN实现对iris进行分类的方法
2018/12/11 Python
Python进阶之全面解读高级特性之切片
2019/02/19 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
TensorFlow tf.nn.conv2d_transpose是怎样实现反卷积的
2020/04/20 Python
Python Scrapy多页数据爬取实现过程解析
2020/06/12 Python
python db类用法说明
2020/07/07 Python
CSS3 :not()选择器实现最后一行li去除某种css样式
2016/10/19 HTML / CSS
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
怎样写留学自荐信
2013/11/11 职场文书
人事助理岗位职责
2013/11/18 职场文书
精彩的推荐信范文
2013/11/26 职场文书
平面设计求职信
2014/03/10 职场文书
婚礼司仪主持词
2014/03/14 职场文书
党员四风剖析材料
2014/08/27 职场文书
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
2021/10/16 Python
 Redis 串行生成顺序编码的方法实现
2022/04/03 Redis