这可能只是学习从Python2迁移到Python3的痛苦,但是当我开发模块并部署它时,我经常会发现自己在命令行或IDLE中调试该模块的初始化,类似于:
import pdb
pdb.run("import mymodule")
当我在Python2中执行此操作时,因为它是内置函数,所以我进入调试器并开始浏览我的文件。在Python3中,由于import现在重定向到importlib模块,因此importlib模块的_bootstrap文件总是显示为冻结,因此我无法看到代码中pdb的位置。我发现确保我进入模块代码的唯一方法是在我的模块中放置一个pdb.set_trace()
,我不想这样做。有没有办法在不使用set_trace
的情况下进入我的模块?