Python学习笔记(25)-Python日志使用示例
来源:互联网 发布:同花顺期货模拟软件 编辑:程序博客网 时间:2024/06/05 19:56
一,简介
本篇主要演示为何使用日志,如何输出日志,如何设置日志的级别,如何限制各级别的日志的输出以及如何将日志输出到文件。
二,为何使用日志
使用print()函数输出调试信息是非常不正确的,最简单的原因就是:print()会遍布于程序各处,当程序员不想再输出调试信息时,需要一处一处的去查找然后注释掉print(),非常麻烦。
所以需要注意的是,print()函数实际上是输出给用户看到,就如input()是用来接收用户输入一样。
日志却是用来显示给程序员看的信息的,日志信息可以区分日志信息的严重级别,同时可以轻易的选择是调试状态还是运行状态(可以区分显示的日志级别)。
三,如何输出日志
首先导入日志模块logging,然后对其进行配置,主要配置日志级别(稍后具体讲,日志输出的格式)。代码如下:
#导入日志模块import logging#日志模块配置(DEBUG级别,格式为:时间-级别-消息)logging.basicConfig(level=logging.DEBUG,format="%(asctime)s-%(levelname)s:%(message)s")#输出日志logging.debug("debug日志")
四,日志级别
主要有五种,可以通过logging.basicConfig中的level参数修改级别。
DEBUG:小问题,一般在调试时才会使用INFO:正常运行消息WARNING:警告,可能有问题ERROR:错误,导致程序部分处理失败CRITICAL:致命的问题,程序都要完蛋
如果设置级别为DEBUG,则会输出所有级别日志
如果设置级别为ERROR,则只会输出ERROR和更高的CRITICAL级别的日志。
例如:
#导入日志模块import logging#日志模块配置(级别,格式为:时间-级别-消息)logging.basicConfig(level=logging.ERROR,format="%(asctime)s-%(levelname)s:%(message)s")#输出日志logging.debug("debug日志")#不会输出logging.error("error日志")#会输出logging.critical("critical日志")#会输出
五,日志禁用
如果在程序都调试完了,准备运行了,只想输出CRITICAL级别及以上级别的日志,则可以调用logging.disable(logging.ERROR)
,该方法的功能是禁用该级别及更低级别的日志。
例如:
#导入日志模块import logging#日志模块配置(级别,格式为:时间-级别-消息)logging.basicConfig(level=logging.ERROR,format="%(asctime)s-%(levelname)s:%(message)s")#禁用日志logging.disable(logging.ERROR)#输出日志logging.debug("debug日志")#不会输出logging.error("error日志")#不会输出logging.critical("critical日志")#会输出
六,将日志输出到文件
直接举例即可,只是在basicConfig中添加filename参数即可。
#导入日志模块import logging#日志模块配置(级别,格式为:时间-级别-消息)logging.basicConfig(filename="C:\\runlog.txt",level=logging.ERROR,format="%(asctime)s-%(levelname)s:%(message)s")#输出日志logging.error("debug日志")
阅读全文
0 0
- Python学习笔记(25)-Python日志使用示例
- python学习笔记-日志
- Python学习日志之三-----Python小应用示例
- Python亲和性分析示例-学习笔记
- Python-分类问题示例-OneR-学习笔记
- python学习笔记 --- logging日志模块
- Python学习笔记 --- 实现日志管理服务
- Python学习笔记(八) -- Python Socket 编程 - 聊天室示例程序
- Python学习笔记(12)-Python模块与包示例
- Python学习笔记(13)-Python类与对象示例
- Python学习笔记(一) -- Python封装日志记录
- python学习笔记+使用技巧
- 【Python学习笔记】使用模块
- 【Python学习笔记】使用__future__
- Python学习笔记--DataFrame使用
- python学习笔记 使用__slots__
- python学习笔记 使用@property
- Python学习笔记25
- Unity资源路径及加载外部资源介绍
- 04.10 磁盘重点知识
- 7-10
- Mac 本踩的坑—mybatis 逆向工程创建失败
- Activity以singleTask模式启动,intent传值的解决办法
- Python学习笔记(25)-Python日志使用示例
- 解决nfs挂载错误wrong fs type, bad option, bad superblock
- Java+Selenium3方法篇45-Java中如何读取properties文件内容
- 解析C语言结构体,位段
- mongodb 视图Views
- caffe模型weights&featureMap 可视化(c++)
- 获取验证码:倒计时封装
- final的知识点
- JAVA对XML文件的读写(有具体的代码和解析)