VS Code中Python代码调试

Python扩展通过Python调试器扩展支持多种类型的Python应用调试。简短了解基本调试,见Tutorial - Configure and run the debugger。此外也查看Flask tutorial。两个手册展示了像设置断点和步入代码核心技能。

学习通用的调试特性,像检查变量、设置断点和其他不依赖语言的活动,回顾VS Code debugging

本文主要讲述Python特定的调试配置,包含特定应用类型和远程调试必要的步骤。

Python调试器扩展

在VS Code中,Python调试器扩展会随着Python插件一起安装。Python调试器基于实现了Python调试适配器协议的debugpy模块,可以调试多种类型的Python应用,包括脚本、Web应用、远程进程等。

验证上面插件安装的方法是,打开扩展面板Ctrl+Shift+X),在搜索框中输入@installed python debugger,在结果列表中可以看到Python和Python调试器插件。

初始配置

VS Code通过配置控制调试行为。这些配置在launch.json文件中进行定义。launch.json文件存储在工作空间的.vscode目录中。

初始化调试配置,首先打开运行和调试面板Ctrl+Shift+D)。如果还未做配置,会看到运行和调试按钮和创建launch.json文件的超链接。

按照以下步骤创建launch.json文件:

1. 点击创建launch.json文件链接。

2. 从调试选项列表中选择Python Debugger

 3. 从弹出的配置类型选择列表中,根据需要选择:如果调试单个Python脚本,选择Python文件。其他类型及选项在列表中有说明,如下:

 4. 这时候Python调试器扩展会创建并打开launch.json文件。根据上一步骤选择的类型,文件中已经预先定义了一些配置,如本例中选择的Python文件。可以根据需要修改文件内容添加配置(如添加参数)。

 下文会讲解配置细节和不同类型应用的配置。

 附加配置

默认的,VS Code只展示Python调试器扩展最通用的配置。可点击其他配置下拉框中选择添加配置命令或点击launch.json文件编辑器中的添加配置按钮,VS Code会展示所有可选配置的列表(注意选择Python调试程序选项):

 选择带有参数的Python文件后,效果如下:

 调试的时候,状态栏会显示当前的配置和当前的解释器。点击状态栏上的配置,可以选择其他配置。

在工作空间下,默认调试器跟其他扩展一样使用相同的解释器。如果调试器要使用不同的解释器,设置launch.json中的python值,或者使用状态栏的Python解释器指示器。

基础调试

如果只是调试Python脚本,最简单的方式是脚本编辑器运行下拉列表中选择Python调试程序:调试Python文件。

如果调试使用Flask、Django或FastAPI开发的web应用,Python调试器扩展在运行和调试面板中,提供了根据项目结构提供动态调试配置的选项。

如果调试其他类型应用,可以通过点击运行和调试面板中的运行和调试按钮。

 

当没有设置配置时,VS Code会给出调试选项,选择适合的选项快速进入调试。有两个常用的选项,Python文件配置运行当前打开的Python文件,或者使用进程ID进行附加配置连结调试器到一个运行中的进程。添加配置后,就可以在列表中选择,并使用开始调试(F5)进行调试。

命令行调试

如果安装了debugpy也可以在命令行运行调试器。

安装debugpy

使用以下命令安装debugpy

$ pip install --upgrade debugpy
Looking in indexes: https://mirrors.aliyun.com/pypi/simple/
Collecting debugpy
  Downloading https://mirrors.aliyun.com/pypi/packages/fd/b6/ee71d5e73712daf8307a9e85f5e39301abc8b66d13acd04dfff1702e672e/debugpy-1.8.5-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.4 MB)
     ━━━━━━━━━━━━━━━━━
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值