对于python专家: 我放了很多print()来检查我的变量的值。 完成后,我需要删除print()。它非常耗时且容易出现人为错误。
想了解你们如何处理print()。你在编码时删除它还是在结尾删除它?或者有一种方法可以自动删除它,或者你不使用print()来检查变量值?
答案 0 :(得分:4)
改为使用logging,此处为why
记录模块带有许多简单和简单的功能。方便的日志方法,如debug, info, warning, error, critical
例如: -
logging.debug(<debug stuff>)
的修改
我不确定我是否正确理解了一旦完成后需要禁用日志记录,但如果您想取消控制台日志记录,可以尝试
#logger = logging.getLogger() # this gets the root logger
logger = logging.getLogger('my-logger')
logger.propagate = False
# now if you use logger it will not log to console.
修改强>
我想你要确保一切正常工作后,从你的代码中删除所有的print()/ loggging语句!!!!
尝试使用regx注释掉所有打印语句
find . -name '<filename>.py' -exec sed -ri "s/(^\s*)(print.*$)/#\1\2/g" {} \;
答案 1 :(得分:2)
您可以使用具有调试级别的日志记录,并在调试完成后将级别更改为info。因此,不会打印任何带有logger.debug()的语句。
答案 2 :(得分:0)
我所做的是将print语句与字符串中的特殊文本标记放在一起。我通常使用print("XXX", thething)
。然后我只搜索并删除该字符串的行。在输出中也更容易发现。