我有一个 python 脚本,它接受输入参数并运行以响应终端(bash、Mac OSX)中的以下命令。
python test.py arg1 arg2
有没有一种好方法可以在 Debug模式下运行相同的脚本,而无需编辑代码以包含 import pdb
和 pdb.set_trace()
?
例如,如果我使用的是 iPython 控制台,我可以通过以下方式执行此操作:
%run -d test.py arg1 arg2
这很简单,不是吗?为了在终端中实现同样的事情,我认为以下可能有效,但它没有:
python -c "import pdb; import sys; sys.argv = ['test.py', arg1, arg2];pdb.run('test.py')"
代码以参数运行,但不是在 pdb
的 Debug模式下。是不是很难做到,我应该坚持使用 pdb.set_trace
还是 iPython 的 %run -d
?
最佳答案
尝试:
python -m pdb test.py arg1 arg2
运行 python -m pdb
运行 pdb
作为脚本。如果 test.py
在您的路径中而不是您当前的工作目录中,这可能是一个有用的替代品:
python -m pdb "$(which test.py)" arg1 arg2
关于python - 使用来自终端的参数调试 python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29560904/