python—time模块

timetime模块提供各种时间相关的功能,与时间相关的模块有:time,datetime,calendar等。

时间有三种表示方式,一种是时间戳、一种是格式化时间、一种是时间元组。时间戳和格式化时间的相互转化,都需要先转化为时间元祖。

时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。

 1 import time
 2 time.sleep(30)          #等待30秒
 3 print(time.time())      #获取当前时间戳
 4 
 5 res=time.strftime('%y-%m-%d %X')        #获取当前年月日时分秒
 6 res2=time.strftime('%X')                #获取当前时间
 7 res3=time.strftime('%H:%M:%S')          #获取当前时间
 8 print(res)                  #19-05-07 16:55:58
 9 print(res2)                 #16:55:58
10 print(res3)                 #16:55:58

时间戳转成格式化好的时间

1 # time_tuple=time.gmtime(1556088065)        #时间戳转成时间元祖(取的是标准时区的时间差8小时)
2 time_tuple=time.localtime(1556088065)     #时间戳转成时间元祖(取的是当地时区的时间)
3 result=time.strftime('%y-%m-%d %X',time_tuple)
4 print(result)

格式化好的时间转成时间戳

1 time_tuple2=time.strptime('19-04-24 14:41:05','%y-%m-%d %X')
2 # 上面是把格式化好的时间转成时间元祖(前后两个元素必须格式一致)
3 result=time.mktime(time_tuple2)     #把时间元组转换成时间戳
4 print(result)

 封装函数格式化好的时间转时间戳

1 def str_to_timestamp(str_time=None,format='%y-%m-%d %X'):
2     if str_time:
3         time_tuple=time.strptime(str_time,format)#把格式化好的时间转成时间戳
4         result=time.mktime(time_tuple)#把时间元组转成时间戳
5         return int(result)
6     return int(time.time())     #获取当前的时间戳
7 print(str_to_timestamp())

封装函数 时间戳转换成格式化好的时间,如果没有传时间戳,就取当前的格式化时间

1 def timestamp_to_str(timestamp=None,format='%y-%m-%d %X'):
2     if timestamp:
3         time_tuple=time.localtime(timestamp)#把时间戳转换成时间元祖
4         result=time.strftime(format,time_tuple)#把时间元祖转成格式化好的时间
5         return result
6     else:
7         return time.strftime(format)
8 print(timestamp_to_str())

 

posted @ 2019-05-07 17:06  localhost;  阅读(175)  评论(0编辑  收藏  举报