在开发 Python 包时,使用该-m
选项将包内的模块作为脚本运行以进行快速测试非常方便。例如,对于里面somepackage
的模块,调用somemodule.py
python -m somepackage.somemodule
从somepackage
驻留的目录中运行somemodule.py
,就好像子模块是__main__
. 如果包使用此处所述的显式相对导入,则使用此调用语法尤其重要。
-m
同样,使用该选项调试脚本也很方便,如
python -m pdb somescript.py
有什么办法可以同时做到这两点吗?也就是说,我可以像调用脚本一样调用模块并同时启动到调试器中吗?我意识到我可以进入代码本身并插入import pdb; pdb.set_trace()
我想要中断的地方,但我试图避免这种情况。