跳转至

调试代码

使用场景:VScode需要调试代码中的库,以分析其运行逻辑的时候 eg. transformers

默认情况下,VScode是不会进入库或者包文件内部进行调试的,所以,如果我们需要应该修改VScode中的debug配置文件,即launch.json文件。

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python 调试程序: 当前文件",
            "type": "debugpy",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": false 
            //【重要】需要将这个参数设置为false才能正常debug进入库
        }
    ]
}

调试的几个按钮都很方便,需要学会如何使用:

  • 继续:运行至下一个断点
  • 逐过程:逐行执行,但是不会进入调用的函数内部
  • 单步调试:最小的调试单位,逐行执行,但是会进入函数的内部
  • 单步跳出:跳出调用,注意这不是倒退!调试不能倒退!
  • 重启:重启至第一个断点
  • 结束:结束调试

另外调试控制台真的很好用,可以再调试控制台输入各种Python命令以查看其中的各个属性值。虽然鼠标放在这个变量的上面也会显示,但有时需要使用到tensor.shape这样的指令。