我们在用python代码跑实验的时候,往往会通过使用print()函数在Terminal(终端)输出一定结果的方式来检查。可以将这些输出在终端的内容称为我们的日志,假如我们希望输出在Terminal的内容能保存下来,该怎么做呢?
方法很简单,加入如下代码即可:
import sys import os class Logger(object): def __init__(self, fileN="default.log"): self.terminal = sys.stdout self.log = open(fileN, "a") def write(self, message): self.terminal.write(message) self.log.write(message) def flush(self): pass
然后在print()函数之前调用下面这一行代码,即可将print()所输出在Terminal终端面板的内容保存在datalog.txt文件中
sys.stdout = Logger('datalog.txt')