Mac和Windows中Pythons time.clock()的区别是什么?
我使用Python的时间来衡量Selenium进程的时间框架。我的剧本是这样的Mac和Windows中Pythons time.clock()的区别是什么?,python,macos,time,Python,Macos,Time,我使用Python的时间来衡量Selenium进程的时间框架。我的剧本是这样的 start_time = time.clock() ... #ending with final_time = '{0:.2f}'.format(time.clock()-start_time) 当在windows操作系统上运行时,我会得到类似于55.22的结果,但如果在Mac上运行,它会返回类似于.14的结果,即使它几乎是在同一时间 知道Mac上发生了什么不同吗?实际上,我也将在Ubuntu上试用,看看它们的区别
start_time = time.clock()
...
#ending with
final_time = '{0:.2f}'.format(time.clock()-start_time)
当在windows操作系统上运行时,我会得到类似于55.22
的结果,但如果在Mac上运行,它会返回类似于.14
的结果,即使它几乎是在同一时间
知道Mac上发生了什么不同吗?实际上,我也将在Ubuntu上试用,看看它们的区别。每,时间。时钟在Unix(包括Mac OS X)和Windows之间是不同的:
在Unix上,以浮点数形式返回当前处理器时间
以秒表示。精确性,事实上就是定义
“处理器时间”的含义取决于C函数的含义
具有相同的名称,但在任何情况下,这都是要使用的函数
基准测试Python或计时算法
在Windows上,此函数返回自
根据
Win32函数QueryPerformanceCounter()
。分辨率通常是
比一微秒好
如果需要跨平台的一致性,请考虑.< /P>
处理器时间和墙上时钟时间之间的差异解释如下-基本上,处理器时钟只有在进程工作时才会前进。
每,时间。时钟
在Unix(包括Mac OS X)和Windows之间是不同的:
在Unix上,以浮点数形式返回当前处理器时间
以秒表示。精确性,事实上就是定义
“处理器时间”的含义取决于C函数的含义
具有相同的名称,但在任何情况下,这都是要使用的函数
基准测试Python或计时算法
在Windows上,此函数返回自
根据
Win32函数QueryPerformanceCounter()
。分辨率通常是
比一微秒好
如果需要跨平台的一致性,请考虑.< /P>
处理器时间和挂钟时间之间的区别解释如下-基本上,处理器时钟只有在进程工作时才会前进。标准库中的timeit模块使用timeit。默认计时器
测量挂钟时间:
if sys.platform == "win32":
# On Windows, the best timer is time.clock()
default_timer = time.clock
else:
# On most other platforms the best timer is time.time()
default_timer = time.time
help(timeit)
说明:
因此,为了实现跨平台的一致性,您可以使用
import timeit
clock = timeit.default_timer
start_time = clock()
...
final_time = clock()
标准库中的timeit模块使用timeit.default_timer
测量墙壁时间:
if sys.platform == "win32":
# On Windows, the best timer is time.clock()
default_timer = time.clock
else:
# On most other platforms the best timer is time.time()
default_timer = time.time
help(timeit)
说明:
因此,为了实现跨平台的一致性,您可以使用
import timeit
clock = timeit.default_timer
start_time = clock()
...
final_time = clock()
谢谢你,先看说明书总是个好主意,但那没那么有趣;-)谢谢你,先看说明书总是个好主意,但那没那么有趣;-)+1表示计时器。默认计时器()
。在Python 3.3+中,timeit.default\u timer()
在所有平台上都是time.perf\u counter()
。+1表示timeit.default\u timer()
。在Python 3.3+中,所有平台上的timeit.default\u timer()
都是time.perf\u counter()
。