datetime、logging

time模块:

time.time()    返回1970年到现在的时间戳

time.sleep(3)   程序推迟3秒执行

datetime模块是python处理时间日期的标准库

常用的是datetime和timedelta类      datetime.datetime()     datetime.timedelta()


获取当前日期:datetime.datetime.now()

日期时间转换为时间戳:日期时间对象.timestamp()               //datetime.datetime.now().timestamp()

时间戳转换为日期时间:datetime.datetime.fromtimestamp(时间戳)

日期时间对象转字符串:日期时间对象.strftime(format)        //datetime.datetime.now().strftime('%Y-%m-%d  %H:%M:%S')

字符串转日期时间对象:datetime.datetime.strptime('2019-02-06 12:50:33' ,'%Y-%m-%d  %H:%M:%S')


datetime.timedelta( days=0,

                                      seconds=0, microseconds=0 milliseconds=0,

                                      minutes=0, hours=0, weeks=0 )


logging模块

通过日志记录模块,开发者能够清楚的知道程序在什么时候发生了哪些事情和错误

python自带的标准库logging

对logging进行配置:logging.basicConfig(filename='wl.log',level = logging.DEBUD,format='时间:%(asctime)s  日志级别名:%(levelname)s  日志内容:%(message)s')      //写了filename就是输出到文件中,不写就是输出到控制台

logging.debug('这是debug')

logging.info('这是info')

logging.warning('这是warning')

logging.error('这是error')

logging.critical('这是critical')


模块化组件使用:

1 创建一个logger(日志记录器)对象

logger = logging.getLogger(name)     //不写name默认root   格式化输出时%(name)s

logger.setLevel(logging.DEBUG)        //设置级别


2   创建一个hander处理器     StreamHandler输出到控制台    FileHandler输出到文件中

fh = logging.FileHandler(filename='test.log',encoding = 'utf-8')

fh.setLevel(logging.WARNING)

sh = logging.StreamHandler()

sh.setLevel(logging.INFO)


3 设置格式:

formatter = logging.Formatter( '  时间:%(asctime)s   日志级别名:%(levelname)s  日志内容:%(message)s  ' )

fh.setFormatter(formatter)       //处理器设置格式

sh.setFormatter(formatter)


4 把处理器添加到logger记录器上

logger.addHandler(fh)

logger.addHandler(sh)


# # #测试:

# # if __name__ == '__main__':

# #    logger.debug('这是模块debug')

# #    logger.info('这是模块info')

# #    logger.warning('这是模块warning')

# #    logger.error('这是模块error')

# #    logger.critical('这是模块critical')


# import logging

# def create_logger():

#    # 创建一个对象

#    my_logger = logging.getLogger('wl')

#    my_logger.setLevel(logging.INFO)

#    # 创建一个处理器

#    fh = logging.FileHandler(filename='test2.log', encoding='utf-8')

#    fh.setLevel(logging.WARNING)

#    # 创建一个格式

#    formatter = logging.Formatter(

#        '时间:%(asctime)s  级别名称:%(levelname)s  内容:%(message)s'

#    )

#    fh.setFormatter(formatter)

#    # 把处理器添加到logger对象上

#    my_logger.addHandler(fh)

#

#    return my_logger

#

# if __name__ == '__main__':

#    try:

#        print(a)

#    except Exception as e:

#        logger = create_logger()

#        logger.error(e)

你可能感兴趣的:(datetime、logging)