时间模块的书写格式:import time 导入一个时间模块
时间方面的可以分为几种形式:
时间戳:表示从1970年0点0分到现在目前经过了多少秒
格式化时间:这个时间可以根据我们对于时间的需求对时间进行格式化操作
结构化时间:把时间分类进行划分,有很多种形式.年份,月份,小时,分钟,秒等等
s = time.strftime("%Y-%m-%d %H:%M:%S") # 必须记住 固有的时间格式
日期格式化标准:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的
# localtime 结构化时间,什么都不填.直接打印是现在系统时间
#往里面填数值,就显示从1970年到现在经过的秒数,所处在的结构化时间
#strftime将时间转换成格式化时间
t = time.localtime(1888888888) # 结构化时间
s = time.strftime("%Y-%m-%d %H:%M:%S", t) # 格式化这个时间
#strptime 将格式化时间转换成结构化时间
#mktime 将结构化时间转换成时间戳,因为可能利用时间戳进行一系列的操作
s = "2020-10-01 12:18:12"
t = time.strptime(s, "%Y-%m-%d %H:%M:%S") # 转化成结构时间
print(time.mktime(t))
求时差
#将两个时间进行转换成时间戳
true_time=time.mktime(time.strptime('2017-09-11 08:30:00','%Y-%m-%d %H:%M:%S))
time_now=time.mktime(time.strptime('2017-09-12 11:00:00','%Y-%m-%d %H:%M:%S'))
dif_time=time_now-true_time #计算时间撮的时间差
struct_time=time.localtime(dif_time) #将时间差转换成机构化时间
print('过去了%d年%d月%d天%d小时%d分钟%d秒'%(struct_time.tm_year-1970,struct_time.tm_mon-1,struct_time.tm_mday-1,
struce_time.tm_hour,struct_time.tm_min,struct_time.tm_sec))