python怎么让打印信息既能输出到屏幕又能保存到log文件呢
时间: 2024-02-01 19:04:25 浏览: 252
要同时将打印信息输出到屏幕和保存到日志文件,你可以使用Python的logging模块结合使用StreamHandler和FileHandler。下面是一个示例:
```python
import logging
# 配置日志记录器
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
# 创建一个输出到屏幕的处理器
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.DEBUG)
logger.addHandler(console_handler)
# 创建一个输出到文件的处理器
file_handler = logging.FileHandler('example.log')
file_handler.setLevel(logging.DEBUG)
logger.addHandler(file_handler)
# 打印信息
logger.debug('这是一条调试信息')
logger.info('这是一条普通信息')
logger.warning('这是一条警告信息')
logger.error('这是一条错误信息')
logger.critical('这是一条严重错误信息')
```
在上述代码中,我们首先通过`getLogger`函数获取默认的日志记录器,并设置日志级别为`DEBUG`。然后,创建了一个输出到屏幕的处理器`console_handler`和一个输出到文件的处理器`file_handler`。分别设置了处理器的日志级别和输出目标(屏幕或文件)。最后,通过调用日志记录器的方法来打印信息。
执行上述代码后,打印信息既会在屏幕上显示,也会保存到名为`example.log`的日志文件中。你可以根据自己的需求修改日志级别和日志文件名称。
阅读全文