一、常用时间模块time
时间戳概念:时间戳是指距离unix系统发明的时间有多少秒
注意:因为时间计算上会出现跨年、跨月、跨日、闰年、闰月等复杂性,引入时间戳便于日期的计算
import time print(time.time())#获取当前时间戳 print(time.strftime('%Y-%m-%d %H:%M:%S'))#格式化输出当前时间 #时间元组 print(time.localtime(1589881165))#查看时间戳的时间元组 print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(1589881165)))#将时间元组转换格式化输出 #将时间元组转换为时间戳 result = time.strptime('2020-05-19 17:42:17','%Y-%m-%d %H:%M:%S')#将格式化的时间转换为时间元组 print(result) print(time.mktime(result))#将时间元组转换为时间戳
返回结果:
1589883473.562205 2020-05-19 18:17:53 time.struct_time(tm_year=2020, tm_mon=5, tm_mday=19, tm_hour=17, tm_min=39, tm_sec=25, tm_wday=1, tm_yday=140, tm_isdst=0) 2020-05-19 17:39:25 time.struct_time(tm_year=2020, tm_mon=5, tm_mday=19, tm_hour=17, tm_min=42, tm_sec=17, tm_wday=1, tm_yday=140, tm_isdst=-1) 1589881337.0
二、定义时间戳和格式化时间相互转换方法
def str_to_timezone(str=None,format='%Y-%m-%d %H:%M:%S'):#将格式化后的时间转换为时间戳 if str: time_tuple = time.strptime(str,format)#将格式化的时间转换为时间元组 result = time.mktime(time_tuple)#将时间元组转换为时间戳 else: result = time.time() #获取当前时间戳 return result def timezone_to_str(timezone=None,format='%Y-%m-%d %H:%M:%S'):#将时间戳转换为格式化后的时间 if timezone: time_tuple = time.localtime(timezone) result = time.strftime(format,time_tuple) else: result = time.strftime(format) return result print(str_to_timezone()) print('*'*10) print(timezone_to_str())
输入结果为:
1589883915.2785792 ********** 2020-05-19 18:25:15