1
在一个相对较大的python3代码库中,有几个打印语句通过我想要查找的代码点开。如果打印功能可以被覆盖,它会使打印文件和行号总是非常容易。示例输出:全局覆盖打印语句python
>>> print("Some Message")
filename:line_number
Some Message
对我来说,这是特别的问题,因为Python文件被包裹起来的二进制块内,并grepping对他们来说是徒劳无益的,而是由回溯模块给出的文件名是仍明智的。
对于python2的解决方案,有这个提问/回答: How to make print() override work "globally"
请注意,这是一个非常好的理由,为什么你不应该使用'print'进行日志记录,而是实际的'logging'模块。这将允许您定义处理程序和格式化程序,以完成您所需的操作。 –
我完全同意,并在我自己的代码中做到这一点 – sdfgeoff