Python学习笔记(11)日志

日志等级

debug<info<warning<error<critical

默认打印 warning,error, critical 三个等级的日志

import logging

logging.debug(‘debug message‘)

logging.info(‘info message‘)

logging.warning(‘warning message‘)

logging.error(‘error message‘)

logging.critical(‘critical message‘)

结果:

WARNING:root:warning message
ERROR:root:error message
CRITICAL:root:critical message

格式化打印日志

import logging

logging.basicConfig(

level=logging.DEBUG,

format=‘%(asctime)s %(filename)s [line:%(lineno)d] %(levelname)s %(message)s‘,

datefmt = ‘%a %d %b %Y %H:%M:%S‘,

filename=‘test.log‘,

filemode=‘w‘

)

logging.debug(‘debug message‘)

logging.info(‘info message‘)

logging.warning(‘warning message‘)

logging.error(‘error message‘)

logging.critical(‘critical message‘)

Mon 23 Apr 2018 10:41:51 日志.py [line:10] DEBUG debug message
Mon 23 Apr 2018 10:41:51 日志.py [line:11] INFO info message
Mon 23 Apr 2018 10:41:51 日志.py [line:12] WARNING warning message
Mon 23 Apr 2018 10:41:51 日志.py [line:13] ERROR error message
Mon 23 Apr 2018 10:41:51 日志.py [line:14] CRITICAL critical message

level打印最低等级

asctime时间 filename文件名  lineno行数 levelname 日志等级 message信息

datefmt 格式化时间 %a星期 %d天 %b月 %Y年 %H时 %M分 %S秒

filename 文件

filemode 写入模式

文件和屏幕同时打印

import logging

logger = logging.getLogger()

fh = logging.FileHandler(‘test.log‘)

ch = logging.StreamHandler()

formatter = logging.Formatter(‘%(asctime)s - %(name)s - %(levelname)s = %(message)s‘)

fh.setFormatter(formatter)

ch.setFormatter(formatter)

logger.addHandler(fh)

logger.addHandler(ch)

logger.setLevel(logging.DEBUG)

logger.debug(‘logger debug message‘)

logger.info(‘logger info message‘)

logger.warning(‘logger warning message‘)

logger.error(‘logger error message‘)

logger.critical(‘logger critical message‘)

原文地址:https://www.cnblogs.com/thyh/p/8916861.html

时间: 2024-10-31 19:11:24

Python学习笔记(11)日志的相关文章

python 学习笔记 11 -- 使用参数使你的程序变得更性感

当然,在之前的系列中,我已介绍如何给 Python 脚本传参,当然,今天不会继续介绍这么无聊的东东.首先使用 python 的sys.argv 传参的话,就固定了参数的个数.顺序以及格式,这么死的规定如何性感? I have a dream , to make my code much sexer ! 今天我们简单介绍一下如何更加随性的给 python 脚本传参.效果如下: [email protected]:/tmp$ python arg.py -h NAME: project with u

python学习笔记(日志系统实现)

博主今天在自己的接口自动化框架中添加了日志系统 基于python自带的logging库.包括日志主函数.生成日志文件: 1 # -*- coding: utf-8 -*- 2 # 日志系统 3 # 时间:2017-08-31 4 # 姓名:xx 5 6 import logging 7 import os 8 from datetime import datetime 9 10 11 class MainLog: 12 def __init__(self): 13 pass 14 15 @sta

python学习笔记11 ----网络编程

网络编程 网络编程需要知道的概念 1.网络体系结构就是使用这些用不同媒介连接起来的不同设备和网络系统在不同的应用环境下实现互操作性,并满足各种业务需求的一种粘合剂.网络体系结构解决互质性问题彩是分层方法. 网络(OSI)的7层模型: 应用层--->为应用程序提供网络通信服务 表示层--->数据表示 会话层--->主机间通信(两个应用进程间) 传输层--->端到端的连接,隔离网络的上下层协议,使得网络应用与下层协议无关 网络层--->寻找最优路径,转发数据包 数据链路层---&

Python学习笔记11—函数

建立第一个函数 /usr/bin/env Python #coding:utf-8 def add_function(a,b): c = a+b print c if __name__=="__main__": add_function(2,3) 在定义函数的时候,参数可以像前面那样,等待被赋值,也可以定义的时候就赋给一个默认值.例如 >>> def times(x,y=2): #y的默认值为 2 ... print "x=",x ... prin

Python学习笔记11:标准库之文件管理

1 os包 os包包括各种各样的函数,以实现操作系统的许多功能.这个包非常庞杂.os包的一些命令就是用于文件管理. 我们这里列出最常用的: mkdir(path) 创建新目录,path为一个字符串,表示新目录的路径.相当于$mkdir命令 比如说我们要新建目录new: import os os.mkdir('/home/Document/new') rmdir(path) 删除空的目录,path为一个字符串,表示想要删除的目录的路径.相当于$rmdir命令 listdir(path) 返回目录中

python 学习笔记 12 -- 写一个脚本获取城市天气信息

最近在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么能够显示后最重要的就是显示什么的问题了.最容易想到的就是显示时间啊,CPU利用率啊,IP地址之类的.那么我觉得呢,如果能够显示当前时间.温度也是甚好的,作为一个桌面小时钟还是很精致的. 1. 目前有哪些工具 目前比较好用的应该是 weather-util, 之前我获取天气信息一般都是通过它. 使用起来也很简单: (1) Debian/Ubuntu 用户使用 sudo apt-get install weather-util 安装

python基础教程_学习笔记11:魔法方法、属性和迭代器

魔法方法.属性和迭代器 在python中,有的名称会在前面和后面各加上两个下划线,这种写法很特别.它表示名字有特殊含义,所以绝不要在自己的程序中使用这种名字.在python中,由这些名字组成的集合所包含的方法叫做魔法(或称特殊)方法.如果对象实现了这些方法中的某一个,那么这个方法会在特殊的情况下被python调用,而几乎没有直接调用它们的必要. 准备工作 为了确保类是新型的,应该把赋值语句__metaclass__=type放在你的模块的最开始,或者(直接或间接)子类化内建类(实际上是类型)ob

OpenCV之Python学习笔记

OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书<OpenCV Computer Vision with Python>,于是就看一遍,顺便把自己掌握的东西整合一下,写成学习笔记了.更需要的朋友参考. 阅读须知: 本文不是纯粹的译文,只是比较贴近原文的笔记:         请设法购买到出版社出版的书,支持正版. 从书名就能看出来本书是介绍在Pytho

python 学习笔记 14 -- 常用的时间模块之datetime

书接上文,前面我们讲到<常用的时间模块之time>,这次我们学习datetime -- 日期和时间值管理模块 使用apihelper 查看datetime 模块,我们可以看到简单的几项: date       ---  日期对象,结构为date(year, month, day) time       ---  时间值对象,结构为 time([hour[, minute[, second[, microsecond[, tzinfo]]]]]).时间对象所有的参数都是可选的.tzinfo 可以

python 学习笔记 6 -- 异常处理

当你的程序中出现某些 异常的 状况的时候,异常就发生了.例如,当你想要读某个文件的时候,而那个文件不存在.或者在程序运行的时候,你不小心把它删除了. 那么如果你是在IDE中运行,一个错误发生,异常会被打引出来,这便是未处理异常:当异常发生时,如果没有代码去关注和处理它,这些异常会传给置在Python中的缺省处理,他会输出一些调试信息并且终止运行.如果是在IDE中,这不是什么大事,但是如果是Python程序运行中的异常,它会导致整个程序终止,对于这些情况可以使用异常来处理. 1.try..exce