我正在开发一个大型代码库,该代码库使用 print 语句进行日志记录而不是 python 日志记录。我想知道是否有建议将所有这些打印语句转换为对 logging.info 的调用?许多这些打印品分布在几行中,因此任何解决方案都需要处理这些情况,并希望能够保持格式。
我研究过 python rope,但它似乎没有将对 print 等语句的调用转换为函数调用的功能。
最佳答案
您可以使用 2to3
并且仅对 print 语句 -> print 函数应用修复。
2to3 --fix=print [yourfiles] # just displays the diff on stdout
2to3 --fix=print [yourfiles] --write # also saves the changes to disk
这应该会自动处理所有这些奇怪的情况,然后将打印函数转换为日志记录函数应该是一个简单的查找和替换,例如 sed
。
如果出于某种原因您没有 2to3
脚本的快捷方式,请将 lib2to3
作为模块运行:
python -m lib2to3 --fix=print .
关于python - 将 python 打印语句转换为日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15082213/