logging模块只要用于日志的打印。模块的源码在:Lib/logging/__init__.py

其中,logging.basicConfig(**kwargs)方法用于进行基本的属性配置,它的参数是可变的,主要有以下参数可以进行配置:

filename:指定创建的文件名;

filemode:指定文件的访问模式;

format:指定打印的格式;

datefmt:指定日期/时间打印格式;

level:指定打印等级;

stream:暂不清楚如何使用。

其中,filemode就是对文件操作的模式,主要有:

文件模式

操作

r

以读方式打开

rU或U

以读方式打开,同时提供通用换行符支持

w

以写方式打开(必要时情况)

a

以追加模式打开(从EOF开始,必要时创建新文件)

r+

以读写模式打开

w+

以读写模式打开(参见w)

a+

以读写方式打开(参见a)

rb

以二进制读模式打开

wb

以二进制写模式打开(参见w)

ab

以二进制追加模式打开(参加a)

rb+

以二进制读写模式打开(参见r+)

wb+

以二进制读写模式打开(参见w+)

ab+

以二进制读写模式打开(参见a+)

format参数指定打印的格式:

 

  

 datefmt参数设置日期和时间的打印格式:

  

level表示打印等级,打印等级是具有优先级的,并且向高优先级兼容,优先级顺序为:DEBUG<INFO<WARNING<ERROR<CRITICAL。例如打印等级设置为DEBUG,则高于DEBUG的等级的打印函数也会执行。

 

  

 测试代码:

 1
				#!/usr/bin/env python
			

 2
				# -*- coding:utf-8 -*-
			

 3
			

 4
				import logging

 5
			

 6
				# 设置logging.basicConfig()方法的参数
			

 7 FORMAT = '%(asctime)s [%(funcName)s: %(lineno)d]: %(message)s'
			

 8 LEVEL = logging.INFO

 9 FILENAME = "logfile.log"
			

10 FILEMODE = "w+"
			

11 DATEFMT = '%m/%d/%Y %I:%M:%S %p'
			

12
			

13
				# 配置logging.basicConfig函数
			

14 logging.basicConfig(filename=FILENAME, filemode=FILEMODE, datefmt=DATEFMT ,level = LEVEL, format=FORMAT)

15
			

16
				def display_func():

17
				# 使用不同的打印等级函数进行打印
			

18     logging.debug('test debug')

19     logging.info('test info')

20     logging.warning('test warning')

21     logging.error('test error')

22
			

23
				if
				__name__ == '__main__':

24     display_func()

测试结果:打印信息输出在logfile.log文件中,文件的内容如下:

  

 参考链接:

 https://docs.python.org/2/library/logging.html

12-25 12:26
查看更多