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)