首页 > 科技 > Python时间处理模块:time模块、datetime模块及日历模块Calendar

Python时间处理模块:time模块、datetime模块及日历模块Calendar

无论是那一个开发语言进行开发,时间的处理都是非常重要的,正确的处理时间是一个程序员开发中必备的技能,特别是对时间精度要求比较高,或者是要分清楚本地时间和服务器时间的这些业务要求,今天就来讲一讲Python当中的时间处理模块:time模块和datetime模块及日历模块Calendar。

一、time模块

在time模块中,可以用三种表现形式来表示时间,分别是时间戳、格式化时间字符串和结构化时间,如下操作:

1、time.time()是获取时间戳;

2、time.strftime("%Y-%m-%d %H:%M:%S")是是按照你提供的时间日期格式化符号进行格式化,返回的是一个字符串;

python中时间日期格式化符号有下列这些符号:

%a 本地星期名称的简写(如星期四为Thu)
%A 本地星期名称的全称(如星期四为Thursday)
%b 本地月份名称的简写(如八月份为agu)
%B 本地月份名称的全称(如八月份为august)
%c 本地相应的日期表示和时间表示
%d 一个月中的第几天(01 - 31)
%f 微秒(范围0.999999)
%H 一天中的第几个小时(24小时制,00 - 23)
%I 第几个小时(12小时制,0 - 11)
%j 一年中的第几天(001 - 366)
%m 月份(01 - 12)
%M 分钟数(00 - 59)
%p 本地am或者pm的标识符
%S 秒数(00 - 59)
%U 一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之 前的所有天数都放在第0周。
%w 一个星期中的第几天(0 - 6,0是星期天)
%W 和%U基本相同,不同的是%W以星期一为一个星期的开始。
%x 本地相应的日期表示
%X 本地相应的时间表示
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%z 与UTC时间的间隔(如果是本地时间,返回空字符串)
%Z 时区的名字(如果是本地时间,返回空字符串)
%% %本身

3、time.localtime()是结构化时间,返回的是一个元组,也称为时间元组,其中元组中的内容如下:

tm_year(年) 2019
tm_mon(月) 1 到 12
tm_mday(日) 1 到 31
tm_hour(时) 0 到 23
tm_min(分) 0 到 59
tm_sec(秒) 0 到 61 (60或61 是闰秒)
tm_wday(weekday) 0到6 (0是周一)
tm_yday(一年的第几天) 1 到 366
tm_isdst(是否是夏令时) -1, 0, 1, -1是决定是否为夏令时的标志

4、time.sleep(seconds)是与线程休眠相关的操作,参数单位是秒

5、time.strptime(string, format),是传入一个时间日期字符串和一个日期时间格式化字符的参数,返回一个时间元组:

6、time.asctime()返回一个可读的形式为的字符串:

7、time.clock() 用以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时

以上是一些开发中常用到的API。

二、datetime模块

datatime模块重新封装了time模块,提供更多接口,提供的类有:time, date, datetime, timedelta, tzinfo。

1、time类:time类表示时间值,属性有hour minute second microsecond tzinfo

2、date类:日期值用date 类表示。实例具有属性year,month和 day。

3、timedelta类:用于时间的加减,对于日期时间里那一个对象进行操作,就在timedelta方法体中进行操作,例如下面对days进行操作:

4、datetimetime类:datetime相当于date和time结合起来。其属性有year, month, day, hour , minute , second , microsecond , tzinfo

5、tzinfo类:tzinfo类表示时区,但由于是抽象类,不能直接实现

三、calendar模块:calendar模块有很广泛的方法用来处理年历和月历

1、其中查看哪一年哪一个月的用法如下:

2、判断是否是闰年:

3、返回某一年某一月的第一天是周几和这个月有多少天:

以上都是一些常用的时间处理的API,我们封装时间处理的工具类时,就可以从这些模块中,利用其中的API进行日期时间处理。

本文来自投稿,不代表本人立场,如若转载,请注明出处:http://www.souzhinan.com/kj/109351.html