如何使用 pudb 调试 "python -m module_name"

How to debug "python -m module_name" using pudb

我有以下 python 电话:

python -m module_name

文件结构如下:

module_name
    __init__.py
    __main__.py

以前,我使用 pudb 调试没有 -m 的 signle python 程序,方法如下:

python -m pudb.run file_name.py

考虑到这一点,我尝试了以下命令但出现错误:

python -m pudb.run -m module_name

错误信息:

Usage: run.py [options] SCRIPT-TO-RUN [SCRIPT-ARGUMENTS]
run.py: error: no such option: -m

是否有任何使用 pudb 进行调试 'python -m module_name' 的解决方案?

不是您问题的确切解决方案,但如果您找不到这样的方法,您可以在模块中导入并启动 pudb,例如在 __main__.py 文件中:

import pudb 
pu.db

# Rest of your module code

然后 运行 它与

python -m module_name

这样它会自动在 pudb 中启动。

现在支持。看到这个 merged PR

pudb3 -m some_module