【Python + VScode】调试 debug 技巧,带参数文件和模块调试

【Python + VScode】 调试技巧,带参数文件和模块调试

引入问题,为什么用IDE?

用终端 PDB 调试?那么多命令记不住。

用 print 调试?太臃肿,用还需要删。

推荐用 VS code 做调试,能够高亮阅读代码,在图形上做断点、步进等。
在这里插入图片描述

简单的 debug

适合不带参数的 debug。

python test.py

在这里插入图片描述

带参数或者模块的调试

如果有这样的需求,直接在 GUI 上运行调试将会失败。

python test.py 4 5
python -m mymodule.test 4 5

一种方法是改变 launch.json,把参数或者模块的信息加入其中。

太难了,我学不会。

另一种方法,我推荐使用代理文件。创建debugProxy.py 托管你需要调试的命令。

# debugProxy.py
import os, sys, runpy

## 1. cd WORKDIR
# os.chdir('WORKDIR')

## 2A. python test.py 4 5
args = 'python test.py 4 5'

## 2B. python -m mymodule.test 4 5
args = 'python -m mymodule.test 4 5'

args = args.split()
if args[0] == 'python':
    """pop up the first in the args""" 
    args.pop(0)
if args[0] == '-m':
    """pop up the first in the args"""
    args.pop(0)
    fun = runpy.run_module
else:
    fun = runpy.run_path
sys.argv.extend(args[1:])
fun(args[0], run_name='__main__')

在这里插入图片描述

如果你调试的是模块,你必须在 launch.json修改justMyCode: fasle。这样程序就能进入到第三方模块里面。无论调试模块与否,我都推荐修改 justMyCode
在这里插入图片描述

  • 8
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值