Python log模块logging记录打印用法解析


Posted in Python onJanuary 20, 2020

这篇文章主要介绍了Python log模块logging记录打印用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

日志基础教程

日志是对软件执行时所发生事件的一种追踪方式。软件开发人员对他们的代码添加日志调用,借此来指示某事件的发生。一个事件通过一些包含变量数据的描述信息来描述(比如:每个事件发生时的数据都是不同的)。开发者还会区分事件的重要性,重要性也被称为 等级 或 严重性

什么时候使用日志

对于简单的日志使用来说日志功能提供了一系列便利的函数。它们是 debug(),info(),warning(),error() 和 critical()。想要决定何时使用日志,请看下表,其中显示了对于每个通用任务集合来说最好的工具。

实际例子

记录到文件

import logging
logging.basicConfig(filename='example.log',level=logging.DEBUG)
logging.debug('This message should go to the log file')
logging.info('So should this')
logging.warning('And this, too')

打开日志文件,你可以看到如下log信息:

DEBUG:root:This message should go to the log file

INFO:root:So should this

WARNING:root:And this, too

从多个模块记录日志:

如果你的程序包含多个模块,这里有一个如何组织日志记录的示例:

# myapp.py
import logging
import mylib

def main():
  logging.basicConfig(filename='myapp.log', level=logging.INFO)
  logging.info('Started')
  mylib.do_something()
  logging.info('Finished')

if __name__ == '__main__':
  main()

库文件如下所示:

# mylib.py
import logging

def do_something():
  logging.info('Doing something')

如果你运行 myapp.py ,你应该在 myapp.log 中看到:

  • INFO:root:Started
  • INFO:root:Doing something
  • INFO:root:Finished

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python3实现的腾讯微博自动发帖小工具
Nov 11 Python
使用Django的模版来配合字符串翻译工作
Jul 27 Python
Python实现Linux中的du命令
Jun 12 Python
Python3.6.2调用ffmpeg的方法
Jan 10 Python
python导入坐标点的具体操作
May 10 Python
python实现把两个二维array叠加成三维array示例
Nov 29 Python
浅析python表达式4+0.5值的数据类型
Feb 26 Python
Django 自定义404 500等错误页面的实现
Mar 08 Python
VS2019+python3.7+opencv4.1+tensorflow1.13配置详解
Apr 16 Python
python如何导入依赖包
Jul 13 Python
Python常用库Numpy进行矩阵运算详解
Jul 21 Python
Python学习之迭代器详解
Apr 01 Python
解决tensorflow训练时内存持续增加并占满的问题
Jan 19 #Python
Tensorflow获取张量Tensor的具体维数实例
Jan 19 #Python
tensorflow 重置/清除计算图的实现
Jan 19 #Python
TensorFlow2.0:张量的合并与分割实例
Jan 19 #Python
tensorflow中tf.slice和tf.gather切片函数的使用
Jan 19 #Python
tensorflow实现对张量数据的切片操作方式
Jan 19 #Python
python系统指定文件的查找只输出目录下所有文件及文件夹
Jan 19 #Python
You might like
Android App中DrawerLayout抽屉效果的菜单编写实例
2016/03/21 PHP
php post json参数的传递和接收处理方法
2018/05/31 PHP
Javascript 强制类型转换函数
2009/05/17 Javascript
Javascript核心读书有感之表达式和运算符
2015/02/11 Javascript
javascript 动态创建表格的2种方法总结
2015/03/04 Javascript
angular基于路由控制ui-router实现系统权限控制
2016/09/27 Javascript
原生js实现对Ajax的封装(仿jquery)
2017/01/22 Javascript
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
使用D3.js创建物流地图的示例代码
2018/01/27 Javascript
微信小程序之判断页面滚动方向的示例代码
2018/08/30 Javascript
vue3.0中使用postcss-pxtorem的具体方法
2019/11/20 Javascript
Vue之封装公用变量以及实现方式
2020/07/31 Javascript
[02:11]2016国际邀请赛中国区预选赛全程回顾
2016/07/01 DOTA
python爬虫入门教程之糗百图片爬虫代码分享
2014/09/02 Python
设计模式中的原型模式在Python程序中的应用示例
2016/03/02 Python
Python字符串拼接六种方法介绍
2017/12/18 Python
python利用Tesseract识别验证码的方法示例
2019/01/21 Python
Python/Django后端使用PIL Image生成头像缩略图
2019/04/30 Python
python3实现猜数字游戏
2020/12/07 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
2019/09/18 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
Python读取二进制文件代码方法解析
2020/06/22 Python
css3 transform导致子元素固定定位变成绝对定位的方法
2020/03/06 HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
2014/05/07 HTML / CSS
解析浏览器的一些“滚动”行为鉴赏
2019/09/16 HTML / CSS
我想声明一个指针并为它分配一些空间, 但却不行。这些代码有什么 问题?char *p; *p = malloc(10);
2016/10/06 面试题
校长岗位职责
2013/11/26 职场文书
韩语专业职业生涯规划范文:成功之路就在我们脚下
2014/09/11 职场文书
售后客服个人自我评价
2014/09/14 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
介绍信范文大全
2015/05/07 职场文书
现货白银电话营销话术
2015/05/29 职场文书
于丹讲座视频观后感
2015/06/15 职场文书
Java基础之this关键字的使用
2021/06/30 Java/Android
用JS创建一个录屏功能
2021/11/11 Javascript
浅谈MySql update会锁定哪些范围的数据
2022/06/25 MySQL