在Python中输出日志信息,可以使用内置的`logging`模块,该模块提供了灵活的日志记录功能,包括输出到控制台和文件,以及自定义日志格式等。以下是使用`logging`模块输出日志信息的一些示例:
1. 导入模块和简单配置
```python
import logging
设置日志级别为INFO,这意味着只有INFO级别及以上(如WARNING、ERROR、CRITICAL)的日志消息才会被记录
logging.basicConfig(level=logging.INFO)
记录日志消息
logging.debug("这是一条DEBUG级别的日志")
logging.info("这是一条INFO级别的日志")
logging.warning("这是一条WARNING级别的日志")
logging.error("这是一条ERROR级别的日志")
logging.critical("这是一条CRITICAL级别的日志")
```
2. 自定义日志格式和输出位置(文件或控制台)
```python
import logging
配置日志输出的格式
logging.basicConfig(filename='my_log.log', level=logging.DEBUG, format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
记录日志消息
logging.debug("这条日志会写到文件里")
```
3. 使用不同的日志级别
```python
import logging
设置日志级别为DEBUG,这样所有级别的日志都会输出
logging.basicConfig(level=logging.DEBUG)
输出不同级别的日志
logging.debug("这是一条debug信息")
logging.info("这是一条info信息")
logging.warning("这是一条warning信息")
logging.error("这是一条error信息")
logging.critical("这是一条critical信息")
```
4. 将日志同时输出到控制台和文件
```python
import logging
创建一个Logger对象
logger = logging.getLogger('my_logger')
logger.setLevel(logging.DEBUG)
创建一个Handler对象,用于输出到控制台
consoleHandler = logging.StreamHandler()
consoleHandler.setLevel(logging.DEBUG)
创建一个Formatter对象,用于定制日志的格式
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
consoleHandler.setFormatter(formatter)
将Handler对象添加到Logger对象中
logger.addHandler(consoleHandler)
输出日志
logger.debug("这是一条debug信息")
logger.info("这是一条info信息")
logger.warning("这是一条warning信息")
logger.error("这是一条error信息")
logger.critical("这是一条critical信息")
```
通过以上示例,你可以根据需要选择合适的配置方式,将日志信息输出到控制台或文件,并且可以自定义日志的格式。