首页 > 编程 > Python > 正文

python将print输出的信息保留到日志文件中

2019-11-25 11:39:16
字体:
来源:转载
供稿:网友

具体代码如下所示:

import sysimport osimport sysimport ioimport datetimedef create_detail_day(): ''' :return: ''' # 年-月-日 # daytime = datetime.datetime.now().strftime('day'+'%Y-%m-%d') # 年_月_日 daytime = datetime.datetime.now().strftime('day'+'%Y_%m_%d') # 时:分:秒 # hourtime = datetime.datetime.now().strftime("%H:%M:%S") # hourtime = datetime.datetime.now().strftime('time' + "%H_%M_%S") detail_time = daytime # print(daytime + "-" + hourtime) # detail_time = daytime + "__" + hourtime return detail_timedef make_print_to_file(path='./'): '''  example: use make_print_to_file() , and the all the information of funtion print , will be write in to a log file :param path: the path to save print information :return: ''' class Logger(object):  def __init__(self, filename="Default.log", path="./"):   sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')   self.terminal = sys.stdout   self.log = open(os.path.join(path, filename), "a", encoding='utf8')  def write(self, message):   self.terminal.write(message)   self.log.write(message)  def flush(self):   pass sys.stdout = Logger(create_detail_day() + '.log', path=path) print(create_detail_time().center(60,'*'))if __name__ == '__main__':  make_print_to_file(path="/home/log/")  print('explanation'.center(80, '*'))  info1 = '从大到小排序'  info2 = ' sort the form large to small'  print(info1)  print(info2)  print('END: explanation'.center(80, '*'))

总结

以上所述是小编给大家介绍的python将print输出的信息保留到日志文件中,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表