学习使用time模块和datetime模块。
通常我们想让程序等待几秒钟,再继续向下运行,time模块的sleep()方法是一个很好的选择。但是想通过time模块打印系统的当前时间,则比较麻烦。如下:
from time importstrftime, localtime#打印当前时间
defprintTime():print(strftime("%Y-%m-%d %H:%M:%S", localtime()))return
需要调用两个函数。
通过time模块获取程序运行时间,也是比较麻烦的。下面了解下datetime模块中的几个简单快捷的方法。
1. 获取系统时间:
importdatetimeprint(datetime.datetime.now())
这是比较标准化的输出,一眼就能看的明白,不像time模块,更趋向于操作系统层面的时间格式。
2. 获取程序运行时间
这里分两种情况,一种是循环中在控制台输出,另一种是循环中不在控制台上输出,大家对比一下,其实打印这个操作还是比较占用时间的,有利于提高代码速度。
a. 控制台输出
importdatetimedeftestRunTime():
start=datetime.datetime.now()for i in range(1000):for j in range(500):
m= i +jprint(m)
end=datetime.datetime.now()print(end -start)return
if __name__ == '__main__':
testRunTime()
结果:
...
1495
1496
1497
14980:00:03.952226
b. 控制台不输出
结果:
0:00:00.028002
比较结果,一种在4秒左右,一种在0.03秒左右。
datetime.datetime.now()返回的结果是可以直接进行相加减的,类似上面代码中,程序结束时间减去程序开始时间。