时间模块
time库的使用
一,概述
-
time库的基本介绍
-
时间获取
-
时间格式化
-
程序记时应用
二,time库的基本介绍
time库时python中处理时间的标准库
-
计算机时间的表达
-
提供获取系统时间并格式化输出功能
-
提供系统级精确计时功能,用户程序性能分析
2.1 time 库的概述
time库包括三类函数
-
时间获取: time(), ctime(), gmtime()
-
时间格式化:strftime(), strptime()
-
程序时间: sleep(), perf_counter()
三 ,时间获取
四,时间格式化
-
格式化:类似字符串格式化,需要展示模板
-
展示模板由特定的格式化控制符组成
-
strftime()方法
# 引用时间库
import time
# print(time.time())
# # print(time.ctime())
# # print(time.gmtime())
# 定义变量t 为获取当前时间的格式
t = time.gmtime()
# 时间格式化当前时间
time.strftime("%Y-%m-%d %H:%M:%S",t)
# 打印出格式化后当前的时间
print(time.strftime("%Y-%m-%d %H:%M:%S",t))
打印结果为
2019-10-23 12:01:05
4.1 格式化控制符
4.2 时间格式化-代码
五 程序计时应用
5.1 程序计时
程序计时应用广泛
-
程序计时指测量起止动作所经历时间的过程
-
测量时间:perf_counter()
-
产生时间: sleep()
六 单元小结
-
时间获取: time(), ctime(), gmtime()
-
时间格式化:strftime(), strptime()
-
程序时间: sleep(), perf_counter()
代码编写部分
# 打印格林威治时间到当前时间用了多少秒
print(time.time())
1571832430.910502
计算一个数值循环所用时间
start = time.time()
# 定义sum的值
sum = 0
# 定义一个循环
for i in range(1000000):
# 循环数值相加
sum += i
# 打印出sum的值
print(sum)
# 结束时间也为格林威治时间
end = time.time()
# 打印出结束时间减除开始时间用时多少
print(end - start)
得到的结果为
499999500000
0.09973955154418945
格式化时间
# 定义一个值获取当前时间
t1 = time.gmtime()
# 打印出定义好格式的当前时间
print(time.strftime('%Y-%m-%d,'"%H-%M-%S",t1))
# 打印出时间的详细信息
print(time.strptime('2019-10-23 11-38',"%Y-%m-%d %H-%M"))
得到的结果为
2019-10-23,12-29-06
time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=11, tm_min=38, tm_sec=0, tm_wday=2, tm_yday=296, tm_isdst=-1)
设置睡眠时间
# 开始时间为格林威治时间
start = time.time()
# 定义sum的值
sum = 0
# 定义一个循环
for i in range(1000):
# 循环数值相加
sum += i
# 设置睡眠时间,程序每次执行到这里的时候就会睡眠设定的时间
time.sleep(0.01)
# 打印出sum的值
print(sum)
# 结束时间也为格林威治时间
end = time.time()
# 打印出结束时间减除开始时间用时多少
print(end - start)
得到的结果为
499500
10.877092599868774
程序计时
# 开始时间为格林威治时间
start = time.perf_counter()
# 定义sum的值
sum = 0
# 定义一个循环
for i in range(1000):
# 循环数值相加
sum += i
# 打印出sum的值
print(sum)
# 结束时间也为格林威治时间
end = time.perf_counter()
# 打印出结束时间减除开始时间用时多少
print(end - start)
得到的结果为(根据cpu时间,特别精确)
499500
0.0001116999999999993