是否可以以这样一种方式设置调试器,使其在被调试的应用程序产生下一个控制台输出时会中断?
我的应用程序正在打印一个奇怪的字符串,我需要弄清楚它是从哪里来的。在搜索源代码时,找到了太多可能的候选者,该字符串非常通用。
如果您使用的是Python 3,只需定义一个自定义print
函数即可调用原始函数,__builtins__
然后在该自定义函数中设置断点。您的代码将调用它而不是原始代码,而不修改其他任何内容:
def print(*args, **kwargs):
# set debugger breakpoint here
__builtins__.print(*args, **kwargs)
# your code below can use print() normally
完成调试后,只需再次删除或注释该重写功能即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句