Python 安天输出日志,并把程序的print的内容也写入日志
时间: 2024-02-03 20:13:57 浏览: 23
可以使用 Python 的 logging 模块,它可以方便地输出日志,并且可以将程序的 print 内容也写入日志。
下面是一个示例代码:
```python
import logging
# 配置日志格式
logging.basicConfig(filename='example.log', level=logging.DEBUG,
format='%(asctime)s %(levelname)s %(message)s')
# 输出日志
logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
# 将 print 内容写入日志
class LoggerWriter:
def __init__(self, level):
self.level = level
def write(self, message):
if message.strip():
logging.log(self.level, message.strip())
sys.stdout = LoggerWriter(logging.INFO)
sys.stderr = LoggerWriter(logging.ERROR)
print('This is a print message')
```
上面的代码首先配置了日志格式和输出级别,然后使用 logging 模块输出不同级别的日志信息。
接下来,我们定义了一个 LoggerWriter 类,它将 print 内容写入日志中。最后,我们将标准输出和标准错误重定向到 LoggerWriter 对象,这样就可以将程序中所有的 print 内容写入日志了。
运行上面的代码后,会在当前目录下生成一个 example.log 文件,其中包含了所有的日志信息和程序中的 print 内容。