VSCode优雅的使用debug

原始用法:(这里不使用)

配置launch.json,里面传入参数然后debug,这里我们通常需要传入的参数比较多,而且经常修改参数,直接去修改launch.json会比较麻烦,所以使用sh脚本比较方便。

{// Use IntelliSense to learn about possible attributes.// Hover to view descriptions of existing attributes.// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "image_demo.py","type": "debugpy","request": "launch","program": "demo/image_demo.py","console": "integratedTerminal","justMyCode": false,"args": ["demo/demo.jpg","my_configs/mobilenetv2_8xb24-ms-416-300e_coco.py","--weight","checkpoints/yolov3_mobilenetv2_mstrain-416_300e_coco_20210718_010823-f68a07b3.pth","--out-dir","outputs"  ]}]
}

(优雅的用法)直接使用sh文件命令运行debug

1. 安装

  1. 安装包 pip install debugpy -U
  2. 安装vscode关于python的相关插件

2. 创建sh文件

文件内容如下:train.sh

python tools/train.py my_configs/ssdlite_mobilenetv2-scratch_8xb24-600e_coco.py

修改文件权限,变成可运行的文件。

chmod +x train.sh

3. 在python代码里面(最前面加上这句话)

在这里插入图片描述

import debugpy
try:# 5678 is the default attach port in the VS Code debug configurations. Unless a host and port are specified, host defaults to 127.0.0.1debugpy.listen(("localhost", 9501))print("Waiting for debugger attach")debugpy.wait_for_client()
except Exception as e:pass

4. 在vscode的launch.json的configuration里面,加上这个配置

在这里插入图片描述

{"name": "sh_file_debug","type": "debugpy","request": "attach","connect": {"host": "localhost","port": 9501}},

🚨 上面的端口号都写一样。别搞错了。

5. 运行sh脚本

例如 ./train.sh
这里我们会看到Waiting for debugger attach,这时候我点击下面图片中左上角的运行按钮,对应我们上面"name": “sh_file_debug”,这个的名称,这样就进入Debug,我们要传入的参数都在sh脚本里面,然后就愉快的代码调试。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/76559.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

oracle常见问题处理集锦

oracle常见问题处理集锦 oracle常见问题处理集锦ORA-03001:未实施的功能ORA:28000 the count is locked oracle常见问题处理集锦 ORA-03001:未实施的功能 问题 ORA-03001:未实施的功能 在datagrip中修改表名称,使用的语法是: rename old_name to new_n…

项目日志配置模板示例

1.新增application.properties配置 logging.configclasspath:logback-spring.xml spring.profiles.activedev 将项目部署到服务器时需要将dev修改为test后再进行打包部署 2.新增logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <…

2025年第十八届“认证杯”数学中国数学建模网络挑战赛【BC题】完整版+代码+结果

# 问题一&#xff1a;随机森林回归from sklearn.ensemble import RandomForestRegressormodel_rf RandomForestRegressor()model_rf.fit(X_train, y_train)# 问题二&#xff1a;LSTM时间序列预测from tensorflow.keras.models import Sequentialmodel_lstm Sequential()model…

C语言实现TcpDump

一、 在 C 语言中实现 TCP 抓包功能&#xff0c;通常可以使用 libpcap 库。libpcap 是一个广泛使用的网络抓包库&#xff0c;它提供了捕获网络数据包的接口。 libpcap 是一个广泛使用的 C 语言库&#xff0c;用于捕获和过滤网络数据包。它提供了一个通用接口&#xff0c;用于访…

Spark-Core编程

sortByKey算子&#xff1a;对(K, V)型RDD按key排序&#xff0c;K需实现Ordered接口&#xff0c;可指定升序或降序及分区数。 join算子&#xff1a;连接两个(K, V)和(K, W)型RDD&#xff0c;返回(K, (V, W))型RDD 。 leftOuterJoin算子&#xff1a;类似SQL左外连接&#xff0c;返…

阅读MySQL实战45讲第9天

目录 一、你的 SQL 语句为什么变“慢” 二、什么情况会引发数据库的 flush 过程&#xff1f; 三、分析上面四种场景对性能的影响 四、InnoDB 刷脏页的控制策略 五、原作者小结&#xff1a; 引言&#xff1a; 一条 SQL 语句&#xff0c;正常执行的时候特别快&#xff0c;但是有时…

cin,cin.get(),getchar(),getline(),cin.get line()异同点

文章目录 1.cin2.cin.get()3.getchar()4.cin.getline()5.getline() 1.cin &#xff08;1&#xff09;cin>>等价于cin.operator>>()&#xff0c;即调用成员函数operator>>()进行读取数据。 &#xff08;2&#xff09;当cin>>从缓冲区中读取数据时&…

VMware虚拟机Ubuntu磁盘扩容

VMware中操作&#xff1a; 选择要扩容的虚拟机&#xff0c;点击编辑虚拟机设置 打开后点击磁盘——>点击扩展&#xff08;注意&#xff1a;如果想要扩容的话需要删除快照&#xff09; 调整到你想要的容量 点击上图的扩展——>确定 然后我们进到虚拟机里面 首先&#…

卷积神经网络(CNN)可视化网站汇总

深度学习 文章目录 深度学习前言CNN ExplainerDeep Learning PlaygroundConvNetJSUnderstanding CNN with Interactive Visualizations3Blue1Brown Neural Networks YouTube PlaylistDistill.pubTensorFlow CNN Visualization (TensorBoard)NN-SVGOpenAI Microscope 前言 汇总…

实习技能记录【3】-----Git操作

1. Git是什么 Git 是一个分布式版本控制系统 (Distributed Version Control System, DVCS)。 它的核心目标是跟踪文件的变化&#xff0c;让你能够随时记录、回溯、协作和管理你的项目。 2. 介绍 2.1 Git 工作区、暂存区、本地仓库介绍 区域名称英文名说明相关命令工作区Wor…

蓝桥杯单片机刷题——按键设置当前采集距离为距离参数

设计要求 驱动超声波传感器&#xff0c;启动距离测量功能,并将其结果显示到数码管上。 按键“S5”定义为参数按键&#xff0c;按下S5按键&#xff0c;设备自动将当前采集的距离数据作为距离参数&#xff1b; 若测量的距离数据超过距离参数&#xff0c;指示灯L1点亮&#xff…

KV Cache大模型推理加速功能

KV Cache KV Cache是大模型标配的推理加速功能&#xff0c;也是推理过程中&#xff0c;显存资源巨大开销的元凶之一。在模型推理时&#xff0c;KV Cache在显存占用量可达30%以上。 目前大部分针对KV Cache的优化工作&#xff0c;主要集中在工程上。比如著名的VLLM&#xff0c…

Windows 图形显示驱动开发-WDDM 2.0功能_上下文监视

功能概述 上下文监视机制是GPU与CPU协同计算的核心同步技术&#xff0c;通过受监视围栏&#xff08;Monitored Fence&#xff09;实现跨硬件单元的高效协调。其核心目标是解决以下场景的同步需求&#xff1a; GPU引擎间同步&#xff1a;例如在多渲染管线中&#xff0c;后处理…

基于YOLOv8的机场跑道异物检测识别系统:提升航空安全的新一代解决方案(主页有源码)

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​ ​​​​​​​​​ ​​ 1. 机场跑道异物检测领域概述 机场跑道异物(Foreign Object Debris, FOD)是指存在于机场跑道、滑行道等关…

网络协议学习

最近在适配ESP32的网络驱动&#xff0c;借此机会先学习一下网络通信协议。 以太网帧、IP包及TCP与UDP的报文格式一文读懂网络报问中的检验和&#xff08;checksum&#xff09;—— 原理举例代码 提问腾讯元宝提示词&#xff1a; TCP窗口是干什么的拥塞窗口是什么的

fit 转 gpx

新增 fit 转 gpx 功能 https://fittools.cc/home/fit2gpx

C++ I/O 性能优化指南

在高性能计算和大规模数据处理中&#xff0c;I/O 性能优化是提升系统整体效率的关键环节。C 作为一种高性能编程语言&#xff0c;提供了丰富的工具和机制来优化 I/O 操作。本文将详细介绍在 Linux 环境下&#xff0c;如何通过代码层面的优化、系统调用的选择以及多线程技术等手…

Python中内置的数据结构类型详析(内置数据容器)

目录 1. 元组&#xff08;Tuple&#xff09;​​2. 列表&#xff08;List&#xff09;​3. 字典&#xff08;Dict&#xff09;4. 集合&#xff08;Set&#xff09;​​5. 字符串&#xff08;Str&#xff09;6. 队列&#xff08;Queue&#xff09;与栈&#xff08;Stack&#xf…

Socket多路复用网络编程应用总结

Socket多路复用网络编程应用总结 概述 • 传统I/O模型的局限性&#xff1a;传统阻塞式I/O模型每次仅在一个文件描述符&#xff08;File Descriptor, FD&#xff09;上执行I/O操作&#xff0c;导致程序需等待单个操作完成&#xff0c;无法高效处理多连接场景&#xff08;如高并…

安卓开发提示Android Gradle plugin错误

The project is using an incompatible version (AGP 8.9.1) of the Android Gradle plugin. Latest supported version is AGP 8.8.0-alpha05 See Android Studio & AGP compatibility options. 改模块级 build.gradle&#xff08;如果有独立配置&#xff09;&#xff1a;…