环境:win7 + py3.5 + spyder
调用python logging模块定义一个自己的log类,发现在程序结束后,创建的log还会存在,下次运行时会输出两遍。程序如下:
import os, logging
class MyLogger(object):
def __init__(self, name, path='log'):
log_path = str(os.getcwd()) + '\\' + str(name) + '_' + str(path) + '\\'
self.error_lg = logging.getLogger('error')
self.info_lg = logging.getLogger('info')
if (not os.path.exists(log_path)):
os.makedirs(log_path)
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
if (len(self.error_lg.handlers) == 0): #确保只有1个handler
error_h = logging.FileHandler(log_path + 'error.log')
error_h.setFormatter(formatter)
self.error_lg.addHandler(error_h)
if (len(self.info_lg.h