import time
时间戳(timestamp):时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。code
import time print(time.time()) # 1566559582.0275092
格式化的时间字符串(format string):格式化时间表示的是普通的字符串格式的时间。orm
import time print(time.strftime("%Y-%m-%d %X")) # 2019-08-23 19:27:33
结构化的时间(struct time):struct_time元组共有9个元素共九个元素,分别为(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时)blog
# 本地时区 import time print(time.localtime()) # time.struct_time(tm_year=2019, tm_mon=8, tm_mday=23, tm_hour=19, tm_min=29, tm_sec=0, tm_wday=4, tm_yday=235, tm_isdst=0)
# UTC #协调世界时,又称世界统一时间、世界标准时间、国际协调时间。因为英文(CUT)和法文(TUC)的缩写不一样,做为妥协,简称UTC #以本初子午线的平子夜起算的平太阳时。又称格林尼治平时或格林尼治时间 import time print(time.gmtime()) # time.struct_time(tm_year=2019, tm_mon=8, tm_mday=23, tm_hour=11, tm_min=29, tm_sec=50, tm_wday=4, tm_yday=235, tm_isdst=0)
#结构化时间的基准时间(开始时间) import time print(time.localtime(0)) # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
# import time print(time.gmtime(0)) # time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
# 结构化时间的基准时间上增长一年时间 import time print(time.localtime(3600*24*365)) # time.struct_time(tm_year=1971, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=1, tm_isdst=0)
如上图所示,咱们总能经过某些方法在结构化时间-格式化时间-时间戳三者之间进行转换,下面咱们将用代码展现如何经过这些方法转换时间格式。字符串
#结构化时间 import time now_time = time.localtime() print(now_time) #time.struct_time(tm_year=2019, tm_mon=8, tm_mday=23, tm_hour=19, tm_min=39, tm_sec=7, tm_wday=4, tm_yday=235, tm_isdst=0)
# 把结构化时间转换成时间戳格式 print(time.mktime(now_time)) # 1566560347.0
# 把结构化时间转换为格式化时间 # %Y年-%m月-%d天 %X时分秒=%H时:%M分:%S秒 import time now_time = time.localtime() print(time.strftime("%Y-%m-%d %X",now_time)) # 2019-08-23 19:41:35
# 把格式化时间化为结构化时间,它和strftime()是逆操做 import time print(time.strptime("2019-08-23 19:41:35","%Y-%m-%d %X")) # time.struct_time(tm_year=2019, tm_mon=8, tm_mday=23, tm_hour=19, tm_min=41, tm_sec=35, tm_wday=4, tm_yday=235, tm_isdst=-1)
# 把结构化时间表示为这种形式:'Sun Jun 20 23:21:05 1993'。 import time print(time.asctime()) # Fri Aug 23 19:46:21 2019
#若是没有参数,将会将time.localtime()做为参数传入。 import time print(time.asctime(time.localtime())) # Fri Aug 23 19:46:21 2019
# 把一个时间戳转化为time.asctime()的形式。 import time print(time.ctime()) # Fri Aug 23 19:49:18 2019
# 若是参数未给或者为None的时候,将会默认time.time()为参数。它的做用至关于 import time print(time.ctime(time.time())) # Fri Aug 23 19:49:18 2019
#显示方式因为strftime里面前面填写的字符串格式决定,对于字符串表明的内容 %z 所在时区 %Y 年 %m 月(月的数字形式) %b 月(英文缩写) %B 月(英文全屏) %d 日 %a 星期(英文缩写) %A 星期(英文全拼) %H 几时(24小时计数) %M 几分 %S 几秒 %X 时:分:秒 %I 几时(12小时计数) %c Mon Jun 10 07:21:20 2019 %p 上午下午的英文缩写