1、datetime模块
datatime模块是在time模块的基础之上做了封装,提供了更多更好用的类供我们使用,常用的有date、time、datetime、timedelta、tzinfo。但是为了更灵活的处理时间,最好是将time模块和datetime模块中的精髓学习到。
① date类:主要用于处理年、月、日;
② time类:主要用于处理时、分、秒;
③ datetime类:date类和time类的综合使用,可以处理年、月、日、时、分、秒;
④ timedelta类:主要用于做时间加减的;
⑤ tzinfo类:时区类;
注意:tzinfo类用的不多,也就不专门讲述了,如果有需要,可以自行学习。
2、time类
1)静态方法和属性:可以直接通过类名调用;
time.min:time类所能表示的最小时间。
time.max:time类所能表示的最大时间。
time.resolution:time类表示时间的最小单位,这里是1微秒;
操作如下:
from datetime import * time.max time.min time.resolution
结果如下:
2)其它常用方法和属性:通过time对象才能调用;
"属性" t.hour、t.minute、t.second、t.microsecond:时、分、秒、微秒; "方法" t.replace(hour=,minute=,second=,microsecond=):生成一个新的时间对象,用参数指定的时、分、秒、微秒代替原有对象中的属性。(原有对象仍保持不变) t.isoformat():返回型如"HH:MM:SS"格式的字符串时间表示; t.strftime(format):传入任意格式符,可以输出任意格式的时间表示形式;
先构造一个time对象:
# 先构造一个date对象 from datetime import * t = time(17,34,52) display(t)
结果如下:
① t.hour、t.minute、t.second、t.microsecond:时、分、秒、微秒;
t = time(17,34,52) display(t) t = time(17,34,52) display(t.hour,t.minute,t.second,t.microsecond)
结果如下:
② t.replace(hour=,minute=,second=,microsecond=):传入指定的hour或minute或second或microsecond,生成一个新时间的time对象,但不改变原有的time对象;
t = time(17,34,52) display(t) new_hour = t.replace(hour=22) display(new_hour) new_minute = t.replace(minute=30) display(new_minute) new_second = t.replace(second=55) display(new_second) z = t.replace(hour=22,minite=22,second=22) display(z)
结果如下:
③ t.isoformat():返回型如"HH:MM:SS"格式的字符串时间表示;
t = time(17,34,52) display(t) display(t.isaoformat())
结果如下:
④ t.strftime(format):传入任意格式符,可以输出任意格式的时间表示形式;
t = time(17,34,52) display(t) t = t.strftime("%H{H}%M{M}%S{S}").format(H="时",M="分",S="秒") display(t)
结果如下:
注意:常用的时间格式化符号,可以参考下图;