time 模块
time模块是用来和时间打交道的.
时间格式 : '2018-8-20' '2018.8.20' 字符串数据类型 格式化时间 - 给人看的
结构化时间
1534753346.3779998 浮点型数据类型 以s为单位 时间戳时间 - 给机器计算用的.
1970/01/01/0:0 开始计算的时间戳
时间格式的相互转换
import time print(time.localtime()) #时间戳时间获取 print(time.time()) # 1534753548.06 #格式化时间 print(time.strftime("%Y/%m/%d %H:%M:%S")) # 2018/08/20 16:28:49 print(time.strftime("%y/%m/%d %H:%M:%S")) # 18/08/20 16:30:19 #结构化时间 print(time.localtime())# time.struct_time(tm_year=2018, tm_mon=8, tm_mday=20, #tm_hour=16, tm_min=34, tm_sec=30, tm_wday=0, # tm_yday=232, tm_isdst=0) print(time.localtime().tm_mon) # 8 #时间戳转换成字符串时间 print(time.time()) # 时间戳 ret = time.localtime(1534755045.1699998) # 结构化时间 res = time.strftime("%Y/%m/%d %H:%M:%S", ret) # 字符串时间 print(res) # 字符串时间 转 时间戳 ret = time.strptime("2018/08/20", "%Y/%m/%d") # 结构化时间 print(time.mktime(ret)) # 时间戳
小练习
# 3.请将当前时间的当前月1号的时间戳时间取出来 - 函数 def get_time(): ret = time.localtime() res = time.strptime("%s-%s-1" %(ret.tm_year, ret.tm_mon), "%Y-%m-%d") # print(res) # print(time.mktime(res)) return time.mktime(res) print(get_time())
# 2018-8-19 22:10:8 # 2018-8-20 11:07:3 # 经过了多少时 # a = "2018-8-19 22:10:8" # b = "2018-8-20 11:07:3" # def func(t1,t2): # struct_time = time.strptime(t2, "%Y-%m-%d %H:%M:%S") # ret = time.mktime(struct_time) # struct_time1 = time.strptime(t1, "%Y-%m-%d %H:%M:%S") # ret1 = time.mktime(struct_time1) # sub_time = ret - ret1 # s2 = time.gmtime(sub_time) # return s2 # s1 = func(a,b) # print("时间过去了%s年%s月%s日%s小时%s分钟%s秒" % (s1.tm_year-1970, s1.tm_mon-1, s1.tm_yday-1, # s1.tm_hour, s1.tm_min, s1.tm_sec))