一、时间结构体和常用时间格式的转换
1.时间结构体:如这种格式的输出成为时间结构体
time.struct_time(tm_year=2021, tm_mon=7, tm_mday=23, tm_hour=17, tm_min=10, tm_sec=56, tm_wday=4, tm_yday=204, tm_isdst=0)
2.常用的时间格式有2种:
time.strftime():将时间结构体格式化
time.striptime():将格式化的时间字符串转化为时间结构体
(1)Mon Jul 26 12:58:03 2021
(2)2021-07-26 12:58:03
import time
if __name__ == '__main__':
#输出为时间结构体
print(time.localtime())
# 格式化成年-月-日 时:分:秒形式
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
# 格式化成Sat Mar 28 22:24:24 2016形式
print(time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
"""
结果如下:
time.struct_time(tm_year=2021, tm_mon=7, tm_mday=26, tm_hour=12, tm_min=58, tm_sec=3, tm_wday=0, tm_yday=207, tm_isdst=0)
2021-07-26 12:58:03
Mon Jul 26 12:58:03 2021
"""
二、时间戳
将时间转换成时间戳,需要将时间字符串转换为时间结构体,再通过time.mktime()转换成时间戳
import time
if __name == '__main__':
# 将格式字符串转换为时间戳
a = "2021-07-26 12:58:03"
b = "Mon Jul 26 12:58:03 2021"
# 将格式化时间转换成时间结构体
a1 = time.strptime(a, "%Y-%m-%d %H:%M:%S")
print(a1)
b1 = time.strptime(b, "%a %b %d %H:%M:%S %Y")
print(b1)
# 将时间结构体转换成时间戳,time.mktime()的参数只能是时间结构体
print(time.mktime(a1))
print(time.mktime(b1))
"""
结果如下:
time.struct_time(tm_year=2021, tm_mon=7, tm_mday=26, tm_hour=12, tm_min=58, tm_sec=3, tm_wday=0, tm_yday=207, tm_isdst=-1)
time.struct_time(tm_year=2021, tm_mon=7, tm_mday=26, tm_hour=12, tm_min=58, tm_sec=3, tm_wday=0, tm_yday=207, tm_isdst=-1)
1627275483.0
1627275483.0
"""