Python 配置日志(Logging)

示例:

python 复制代码
import logging

class MyApp:
    def __init__(self):
        # 1. 配置日志(通常只在程序启动时配置一次)
        logging.basicConfig(
            level=logging.INFO,
            format='%(asctime)s - %(levelname)s - %(message)s'
        )
        # 2. 获取当前模块的 Logger
        self.logger = logging.getLogger(__name__)

    def run(self):
        self.logger.info("程序开始运行")
        
        try:
            # 模拟一些操作
            result = 10 / 2
            self.logger.info(f"计算结果是: {result}")
            
            # 模拟一个警告
            if result > 4:
                self.logger.warning("结果大于 4,请注意!")
                
        except Exception as e:
            self.logger.error(f"发生了一个错误: {e}")
            
        self.logger.info("程序结束运行")

# 启动程序
if __name__ == "__main__":
    app = MyApp()
    app.run()

说明:

代码片段 作用说明
logging.basicConfig(...) 全局配置日志的基本参数。
level=logging.INFO 设置日志的最低 输出级别。只有 INFO 级别及以上(如 WARNING, ERROR, CRITICAL)的日志才会被打印。
format='%(asctime)s - %(levelname)s - %(message)s' 定义日志的输出格式: - %(asctime)s: 时间戳 - %(levelname)s: 日志级别(如 INFO, ERROR) - %(message)s: 具体的日志内容
self.logger = logging.getLogger(__name__) 获取一个 Logger 实例。通常在类中使用,__name__ 会作为日志的名称(通常是模块名)。

可设置级别:

相关推荐
京和动物医院·总院2 分钟前
2026年未央区宠物医院:如何挑选最适合您爱宠的健康守护者
大数据·人工智能·python
刘小八5 分钟前
RAG 文档切分不是越细越好:选择 Chunk Size 与 Overlap
人工智能·python·语言模型
互联网中的一颗神经元7 分钟前
小白python入门 - 23. Python 正则表达式的应用
python·正则表达式
雪碧透心凉_8 分钟前
while 循环与循环嵌套
开发语言·python
初学者,亦行者14 分钟前
利用pyecharts自动化绘制漏斗图保姆级教程
python·信息可视化·数据分析
乐观勇敢坚强的老彭15 分钟前
信奥C++一维数组笔记
开发语言·c++·笔记
这就是佬们吗23 分钟前
Python入门⑤-异常处理、文件操作与实战项目
开发语言·数据库·python·算法·pycharm
卷无止境33 分钟前
提升 Python 代码健壮性的方法大盘点
后端·python
asdzx6735 分钟前
Python PDF 拆分实战指南:单页拆分与按需页码范围拆分
开发语言·python·pdf
LadenKiller39 分钟前
近期AI训练量化表达,解释改写检查要按顺序
人工智能·python