笔记-python-standard library-16.3 time
1. time
1.1. 开始
time模块中时间表现的格式主要有三种:
- timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量
- struct_time时间元组,共有九个元素组。
- format time 格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。
时间戳单位最适于做日期运算。但是1970年之前的日期就无法以此表示了。太遥远的日期也不行,UNIX和Windows只支持到2038年。
1.2. 时间格式转换图
1.3. 常用时间格式和转换方法
import time
# timestamp
t = time.time()
# 从时间组转换为时间戳
t_m = time.mktime(time.localtime())
#print(t)
#print(t_m)
# 时间戳转本地时间,可带参数可不带,不带就是当前时间了
t1 = time.localtime(t)
#print(t1)
# 时间戳转格林尼治时间,同上一函数
t2 = time.gmtime(t)
#print(t2)
# 格式化输出
# %b 表示英文缩写月份,还有很多格式
# 常规的就下面一行了,更多格式化内容查看文档
t_s1 = time.strftime('%Y-%m-%d %H:%M:%S',t1)
# 另一种格式化,是一种特定格式
t_s2 = time.asctime(t1)
#print(t_s1)
#print(t_s2)
# 字符串转时间
# time.strftime(fmt[,tupletime])
# 接收以时间元组,并返回以可读字符串表示的当地时间,格式由fmt决定。
print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
# time.strptime(str,fmt='%a %b %d %H:%M:%S %Y')
# 根据fmt的格式把一个时间字符串解析为时间元组。
struct_time = time.strptime("30 Nov 00", "%d %b %y")
print("返回元组: ", struct_time)
# 休眠,单位秒,支持浮点数
# 注意:一般会比给定时间长,因为还有系统调用的影响。
time.sleep()