无论是那一个开发语言进行开发,时间的处理都是非常重要的,正确的处理时间是一个程序员开发中必备的技能,特别是对时间精度要求比较高,或者是要分清楚本地时间和服务器时间的这些业务要求,今天就来讲一讲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(年) tm_mon(月) 1 到 12tm_mday(日) 1 到 31tm_hour(时) 0 到 23tm_min(分) 0 到 59tm_sec(秒) 0 到 61 (60或61 是闰秒)tm_wday(weekday) 0到6 (0是周一)tm_yday(一年的第几天) 1 到 366tm_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进行日期时间处理。
如果觉得《c linux time微秒_Python时间处理模块:time模块 datetime模块及日历模块Calendar》对你有帮助,请点赞、收藏,并留下你的观点哦!