在VSCode中调试Python程序

在VSCode中调试Python程序

1.条件与环境

1.1 前提条件

VSCode中已安装扩展Python点击直达】和Python Debugger点击直达

1.2 本文运行环境

平台/软件 版本
操作系统 Windows 10 企业版 22H2 19045.4046 64位
VSCode 1.98.2
Python 3.12.3

2.步骤

2.1 创建launch.json

依次点击【Run and Debug】-【create a launch.json file】-【Python File】:

image-20250324103835954

会自动创建并打开launch.json

image-20250324103925309

Tips: 如果调试的是简单Python程序,只需要按下【F5】即可,无需创建launch.json;但大多数情况下都需要通过launch.json来设置启动参数、环境变量等。

2.2 配置launch.json

launch.json为每个项目独有的,位于项目目录的.vscode目录下;

可点击右下方【Add Configuration…】添加配置,比如【justMyCode】是否仅调试自己的代码、【args】启动参数:

image-20250324142312068

常用配置:

参数 说明
name 在调试启动配置下拉列表中显示的易于阅读的名称
type 调试器类型,比如node、php、go
request 调试模式,当前仅支持launch(和程序一起启动)或attach(程序已启动、附加到程序上)
program 启动调试器时运行的可执行文件或文件
cwd 当前工作目录(用于查找依赖项和其他文件)
args 启动调试器时的参数
env 环境变量
envFile .env 文件路径
port 调试器端口
justMyCode 是否仅调试自己的代码(设置为false时包括非用户代码、如库代码,导入的模块代码等)
stopOnEntry 程序启动后立即退出
console 控制台类型,比如internalConsole、integratedTerminal、externalTerminal

注意坑点:args的配置值和运行时可能会有所不同,比如运行命令是python .\client.py ../weather/main.py,而调试时需配置参数为"args": ["../weather/main.py"],因为调试client.py时会自动将其作为参数加上。

如果配置成"args": ["client.py", "../weather/main.py"],则调试时会发现多了1个client.py

image-20250324150933632

只有配置成"args": ["../weather/main.py"]才是正确的:

image-20250324150737588

所有可配置的参数详见官方文档【点击直达

2.3 添加/删除断点

在代码行号前点击添加断点、再次点击则删除断点:

image-20250324160225487

2.4 调试

打开要调试的Python代码,点击运行图标、选择【Python Debugger: Debug using launch.json】-【Python Debugger: Current File】:

image-20250324151338208

image-20250324151502632

也可在【Run and Debug】窗口点击调试配置文件(快捷键【F5】)开始调试:

image-20250324153812385

调试界面:

image-20250324153612370

image-20250324153017235

相关资料