Python将打印输出导向日志文件

本文介绍了两种在Python中记录日志的方法:一是通过sys.stdout将print输出重定向到日志文件;二是使用logging模块实现规范化的日志输出。第一种方法简单直接,适合快速将控制台输出保存为日志文件;第二种方法功能更强大,可以设置不同的日志级别和格式,但输出会带有类型前缀。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法一:利用sys.stdout将print行导向日志文件中

import sys

# make a copy of original stdout route
stdout_backup = sys.stdout
# define the log file that receives your log info
log_file = open("message.log", "w")
# redirect print output to log file
sys.stdout = log_file

print "Now all print info will be written to message.log"
# any command line that you will execute
...

log_file.close()
# restore the output to initial pattern
sys.stdout = stdout_backup

print "Now this will be presented on screen"

方法二:利用logging模块(规范化日志输出,推荐!!)

但是,logging的屏幕输出会有类型前缀,所以本人用了法一。

#a simple sample
import logging
logging.basicConfig(format='%(levelname)s:%(message)s', level=logging.DEBUG)
logging.debug('This message should appear on the console')
logging.info('So should this')
logging.warning('And this, too')

output

DEBUG:This message should appear on the console
INFO:So should this
WARNING:And this, too

see Python日志库logging总结

参考:
Python中将打印输出导向日志文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值