调试代码
使用场景: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这样的指令。