目录
[2.1 python环境](#2.1 python环境)
[2.2 Visual Studio Code编译](#2.2 Visual Studio Code编译)
[3.1 代码构思](#3.1 代码构思)
[3.2 代码示例](#3.2 代码示例)
[3.3 运行结果](#3.3 运行结果)
1、认识Python
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。
2、环境与工具
2.1 python环境
在Windows上使用命令行窗口查看所安装的python版本
python --version
2.2 Visual Studio Code编译
Visual Studio Code是一款由微软开发且跨平台的免费源代码编辑器。该软件以扩展的方式支持语法高亮、代码自动补全、代码重构功能,并且内置了命令行工具和Git 版本控制系统。
3、生成日志信息
3.1 代码构思
先是新建了一个写日志的类,使用creat_logger()函数生成了一个日志记录器,然后直接向日志记录器中写入日志。
代码中通过运行一个会报错的程序来实现日志中警告信息的写入。
3.2 代码示例
import logging
import os
# 配置日志记录
class CreaterLogger:
def __init__(self, filename, formatter, level):
self.filename = filename
self.formatter = formatter
self.level = level
def creat_logger(self, logger_name):
# 创建日志记录器
log_obj = logging.getLogger(logger_name)
# 设置日志输出级别
log_obj.setLevel(self.level)
handler = logging.FileHandler(self.filename, mode='w', encoding='utf-8')
handler.setLevel(self.level)
formatter = logging.Formatter(self.formatter)
handler.setFormatter(formatter)
log_obj.addHandler(handler)
return log_obj
if __name__ == "__main__":
# 设置日志文件名
v_formatter = "时间:%(asctime)s || 文件名:%(filename)s || 行号:%(lineno)d || 级别:%(levelname)s || 内容:%(message)s"
v_filename = 'test_logging.log'
v_level = logging.DEBUG
logger_creator = CreaterLogger(v_filename, v_formatter, v_level)
logger_obj = logger_creator.creat_logger('my_logger')
logger_obj.debug('这是一条debug级别的日志信息')
logger_obj.info('这是一条info级别的日志信息')
logger_obj.warning('这是一条warning级别的日志信息')
try:
# 示例代码块,演示异常日志记录,下面的不能运算,会报错,进而会捕获到异常
1 / 0
except Exception as e:
logger_obj.exception('捕获到一个异常')
print(f"日志信息已写入到 {os.path.abspath(v_filename)}")
3.3 运行结果
4、总结
该代码展示了程序运行过程中报错反馈,方便理解程序泛红、警告反馈的具体实现。