一,logging模块
import logging
logging.debug("")
logging.info("")
logginf.warning("")
logging.error("")
logging.critical("")# 默认的级别为warning
# level总共分5个级别:debug < info< warning< error< critical
## 设置日志级别,日志格式,输出位置
import logging logging.basicConfig( level=logging.DEBUG, filename = "logger.log", filemode = "w", format = "%(asctime)s %(lineno)d %(message)s %(filename)s" ) logging.debug(‘debug message‘) logging.info(‘info message‘) logging.warning(‘warning message‘) logging.error(‘error message‘) logging.critical(‘critical message‘) # 在输出文件logging.log中 当日志级别设置为debug时,输出大于等于debug的日志信息 2018-12-18 22:46:05,141 16 debug message 日志模块.py 2018-12-18 22:46:05,190 17 info message 日志模块.py 2018-12-18 22:46:05,190 18 warning message 日志模块.py 2018-12-18 22:46:05,190 19 error message 日志模块.py 2018-12-18 22:46:05,190 20 critical message 日志模块.py # 当日志的级别设置为 warning 输出大于等于Warning的日志信息 2018-12-18 22:50:55,063 12 warning message 日志模块.py 2018-12-18 22:50:55,063 13 error message 日志模块.py 2018-12-18 22:50:55,063 14 critical message 日志模块.py
##
filename # 指定日志的文件ming
filemode # 和file函数的意义相同,指定日志的打开模式,"w","a"
datefmt # 指定日期的时间格式
level # 设置日志的级别
format # 指定输出的格式和内容
%(name)s # 日志的名字
%(levelno)s # 数字形式的日志级别
%(levelname)s # 文本形式的日志级别
%(pathname)s # 调用日志输出函数的模块的完整路径名,可能没有
%(filename)s # 调用日志输出函数的模块的文件名
%(module)s # 调用日志输出函数的模块名
%(funcName)s # 调用日志输出函数的函数名
%(lineno)d # 调用日志输出函数的语句所在的代码行
%(created)f # 当前时间,用UNIX标准的表示时间的浮 点数表示
%(relativeCreated)d # 输出日志信息时的,自Logger创建以 来的毫秒数
%(asctime)s # 字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒
%(thread)d # 线程ID。可能没有
%(threadName)s # 线程名。可能没有
%(process)d # 进程ID。可能没有
%(message)s # 用户输出的消息
## logger对象
logger = logging.getLogger() # 创建logger对象 fh = loggign.FileHandler("test.log") # 可向文件中发送内容 ch = logging.StreamHandler() # 可向控制台输送内容 fm = logging.Formatter("%(asctime)s %(lineno)d %(message)s %(filename)s") # 格式 fh.setFormat(fm) # 给输出到文件的设置格式 ch.setFormat(fm) # 给输出到控制台的设置格式 logger.addHandler(fh) # 给logger logger.addHandler(ch) # 给logger logger.setLevel("DEBUG") # 可对logger设置级别 logger.debug("hello") logger.info("hello") logger.waring("hello") logger.error("hello") logger.critical("hello")
## 日志补充
import logging logger1 = logging.getlogger("mylogger") logger1.setLevel(logging.DEBUG) logger2 = logging.getlogger("mylogger") logger2.setLevel(logging.INFO) # 注实际上logger1与logger2指向同一个对象,指向mylogger 设置级别时,将logger1设为DEBUG,将logger2设为INFO,实际上两个都为INFO,个输出4条日志 . . . logger1.debug("hello") logger1.info("hello") logger1.waring("hello") logger1.error("hello") logger1.critical("hello") logger2.debug("hello") logger2.info("hello") logger2.waring("hello") logger2.error("hello") logger2.critical("hello")
二,configparser 模块
## 配置文件解析模块
## 注:配置文件中不区分大小写
# 常见的配置文件
待完成...
原文地址:https://www.cnblogs.com/Doaoao/p/10140809.html