use*_*847 5 python debugging subprocess pdb
我有一些 python 代码,其中多次调用子进程(例如,subprocess.check_call())。它显然无法调试到子进程。
有什么方法(例如添加代码)可以做到这一点,或者我必须使用不同的调试器?
事实证明,障碍是调用子进程的代码也重定向了标准输出:
subprocess.call(["called_program",
"-q", num_processes,
"-k", yaml_key],
stdout=logfile,
stderr=subprocess.STDOUT)
Run Code Online (Sandbox Code Playgroud)
根据 tdelaney 的评论,我删除了重定向并在called_program.py
. 现在我可以在该模块中使用 pdb。
如果您有 pdb,则必须单步执行代码。如果您有源文件,请在您感兴趣的行中留下一个断点,并使用 pdb 自动停止在您感兴趣的行处。
这就是我们在 .net 中所做的。希望它也适用于 python..
归档时间: |
|
查看次数: |
4912 次 |
最近记录: |