Python 中 time 模块的 clock()和 time()方法
time
模块是 Python 标准库的一部分。
该模块包含与时间相关的实用程序。该模块用于各种任务,例如计算代码块的执行时间,将时间从一个单位转换为另一个单位,例如小时到秒,天到毫秒,访问挂钟时间。
time
模块有两种常用的方法,即 clock()
和 time()
。本文将讨论 Python 的 time
模块的 clock()
和 time()
方法。
Python 中 time
模块的 clock()
和 time()
方法
time
模块的 clock()
方法返回自当前进程启动以来的 CPU 时间或实时时间。
不幸的是,这种方法依赖于平台。这意味着 clock()
方法对于基于 UNIX 的操作系统(例如 macOS、Linux 和 Microsoft Windows)的行为不同。
对于基于 UNIX 的系统,此方法将进程的 CPU 时间作为浮点数返回,并以秒为单位进行转换。同时,Microsoft Windows 返回自第一次调用此方法以来经过的实际时间或挂钟时间(以秒为单位)。
由于这种不平衡,clock()
方法已从 Python 3.8 的 time
模块中删除。
time()
方法以浮点数返回当前时间(以秒为单位)。与 clock()
方法不同,time()
方法与平台无关。
借助示例让我们知道它的用法。请参阅以下 Python 代码。
import time
start = time.time()
time.sleep(5)
end = time.time()
print(end - start)
输出:
5.021177291870117
上面的 Python 代码首先调用 time()
函数并将时间戳存储在一个变量中。
接下来,它使用 sleep()
方法休眠或等待 5
秒。然后,它再次调用 time()
函数并存储时间戳。最后,它将时差打印到控制台。
请注意,对我来说,时差是 5.021177291870117
,非常接近 5
。请记住,在计算中可以发现很小的变化。
执行 5
秒的睡眠动作以表示需要大约 5
秒才能完成的任务。它应该放在两个 time()
方法调用之间,以测量代码块的执行时间。
有关示例,请参阅以下 Python 代码。
import time
start = time.time()
s = 0
for i in range(100000000):
s += i
print(s)
end = time.time()
print("Time Difference:", end - start)
输出:
4999999950000000
Time Difference: 14.171791315078735