【发布时间】:2016-09-03 20:19:26
【问题描述】:
这段代码:
import time
now = time.clock()
while now + 5 > time.clock():
print time.clock()
time.sleep(1)
print "Woke up"
返回:
0.015718
Woke up
0.015814
Woke up
0.015942
Woke up
0.016107
Woke up
0.01625
Woke up
0.016363
如您所见,返回的时间似乎并没有返回以整数表示的秒数的经过时间,即使这是文档所说的它应该做的事情。这里有什么问题?
编辑:我在 Mac OS X El Capitan 上
【问题讨论】:
-
引用文档:在 Unix 上,以浮点数形式返回当前处理器时间,以秒为单位。精度,实际上是“处理器时间”含义的定义,取决于同名 C 函数的精度。
-
你正在开发什么操作系统?
-
查看我的编辑。关于文档,它仍然说应该以秒表示,这里不是这样。
-
文档声明它返回一个浮点数,而不是整数:“...作为浮点数...”。它以秒表示,它是 CPU 使用时间,而不是 CPU 运行时间,sleep() 函数不使用 CPU 时间。您可能正在寻找返回经过时间的 time.time()。