我使用pdb
调试包含使用pdb.set_trace()
函数的硬编码断点的Python 2.7脚本。当我想在没有停在断点处运行脚本时,我必须注释掉所有pdg.set_trace()
行,然后当我想要在断点处停止时,我必须删除非常低效的注释。有没有办法(例如命令行标志)执行python脚本忽略所有硬编码断点。例如,像PyCharm这样的许多IDE具有忽略断点的运行模式,以及在断点处停止的调试模式。我可以从命令行执行类似的操作吗?
答案 0 :(得分:1)
不,这不是pdb中的一项功能。但是,您可以将命令行选项处理编写到程序中并设置全局变量,例如DEBUG_MODE = True
,然后您只需将所有pdb.set_trace()
调用修改为:
if DEBUG_MODE:
pdb.set_trace()
答案 1 :(得分:0)
您可以设置 PYTHONBREAKPOINT 全局环境变量来打开或关闭 pdb。
将其设置为 0 将禁用 pdb,将其值设置为空值将重新打开它。
示例:
禁用断点:
export PYTHONBREAKPOINT=0
启用断点:
export PYTHONBREAKPOINT=