关于用vscode进行初级调试的一些小总结(python):

Visual Studio Code 的主要功能之一是其出色的调试支持。VS Code 的内置调试器有助于加速您的编辑、编译和调试循环。

由于我是用python写的程序,所以以下介绍都是针对在python环境中进行debug的解释,但大部分概念和功能也适用于其他调试器。

首先我们要进入我们的工作文件夹,进入该根目录下面之后才能进行下一步的工作。

然后我们要打开运行视图:

运行视图

要打开运行视图,请在VS Code 一侧的活动栏中选择运行图标。

运行视图显示与运行和调试相关的所有信息,并有一个带有调试命令和配置设置的顶栏。

如果尚未配置运行和调试(未launch.json创建),VS Code 将显示运行开始视图。

点击创建launch.json文件 ➡ 选择调试器:Python Debugger

然后接下来会让你选择是直接调试当前的运行文件,指能够直接用python xxxx.py运行的文件,还是说要带参数调试当前文件,比如需要在python xxxx.py后面带--ckpt  xxxx(路径)

如果是直接调试当前的运行文件,那么选择第一个即可,之后不需要进行其他设置。

如果是调试带有参数的python文件,那么我们要选择第二个,并且要对参数进行设置。

这两种情况下的launch文件中的参数解释(第一个json文件中有的内容第二个json文件都有):

{
  "name": "openPCDet",              // 该配置的名称,VSCode 调试面板中显示的名字
  "type": "debugpy",                // 使用的调试器类型,这里是 debugpy(Python 的调试适配器)
  "request": "launch",              // 启动方式,launch 表示直接运行程序(不附加到已有进程)
  "program": "${workspaceFolder}/xxxxx/xxxxx/xxxxxx",  // 要执行的 Python 脚本路径
  "console": "integratedTerminal",  // 调试输出在哪显示,这里使用 VSCode 的内置终端
  "cwd": "${workspaceFolder}/xxxxx/xxxxx",              // 当前工作目录(Current Working Directory)
  "args": [                         // 启动脚本时传入的参数,等价于你在命令行中写这些参数
    "--cfg_file", "xxxxxx",
    "--ckpt", "xxxxxxx"
    "--data_path","xxxxxx"
  ]
}

设置好这些参数之后,我们就可以在vscode中debug了

断点:

你想要让文件运行到哪个地方暂停,就在哪个地方加入断点。

可以加入多个断点,运行调试的时候方便对多个地方进行检查


首先说明最重要的两点:

无论是在哪个文件中进行调试,我们都要从主文件进入调试:

调试不是按照代码写出来的顺序进行的,而是按照代码运行的顺序进行的。


比如我想要看主文件中运行的某一个调用的函数的情况,那么我们要在这个函数的某个你想暂停的地方加入断点,然后去主文件中进入调试,这样才能正常按照代码运行的顺序到达你打断点的地方

 但是如果你在该函数中打了断点,直接在该函数中运行调试,这样是没有意义的。


接下来对几个小精灵进行一下解释:

第一个:继续:如果你想要直接跳到下一个断点,那么你就按这个按钮,直接传送到下一个断点处。

第二个:调试下一步:是按照代码运行顺序,运行到当前代码的下一行

                跳过当前语句中调用其他文件的所有语句。
                比如a = func_b,如果func_b是其他文件夹定义的复杂函数,直接跳过

第三个:单步跳入:运行进入到自己写的文件中这一行所调用的函数,

                比如a = func_b,如果func_b是其他文件定义的复杂函数,则进入其他文件。

第四个:单步跳出:如果我们想从当前进入的其他文件的函数中跳出,回到上一级的代码,单步跳出可以实现这个功能。

第五个:重新调试:重新从头开始进行这几个断点的调试

第六个:调试终止。退出调试


调试控制台:

如果我们调试到某一步之后,想看一下之前代码运行过后的某个参数的值,或者是想写一些简单的代码进行进一步的审查,我们就要点击上面的调试控制台,然后在下面的输入框中就可以进行更进一步的调试了。比如如果我们之前有个参数points,我现在想知道这个point的shape,我们就可以直接输入points.shape进行调试,调试控制台会输出我们想要的内容。

参考 

https://juejin.cn/post/7071146744339234846

vscode调试(debug)的几个按键功能详解_vscode前端debgger跳到下一个断点快捷键-CSDN博客

vscode带命令行参数进行调试 - 思wu邪 - 博客园 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值