【问题标题】:what is the difference between time.time and time.clock? [duplicate]time.time 和 time.clock 有什么区别? [复制]
【发布时间】:2016-12-15 17:11:08
【问题描述】:

我认为两者都测量时间?但是它们返回的数字非常不同,我不明白文档在说什么。谁能详细说明一下?

【问题讨论】:

    标签: python


    【解决方案1】:

    time.clock() 为您提供经过的时间time.time() 为您提供挂钟时间

    您可以使用time.time() 与其他人(包括人类)交流有关何时发生的事情。 time.clock() 只能让您衡量某件事需要多长时间。

    一般来说,当你想测量时间时,你会使用time.clock()time.time() 来安排一些事情。为此,time.time() 必须在您的计算机上正确设置(以与您所在地区的其他地区就现在的时间达成一致),但time.clock() 没有,它只是从任意时间点开始计算秒数(通常在您的计算机启动或您的进程首次使用该功能时)。

    time.clock() 的确切行为取决于您的操作系统(它可以只测量进程时间,不包括睡眠时间,或者它可以测量经过的时间,即使进程处于非活动状态,它也可能倒退如果您的系统时间已调整等)。

    对于某些用例,这种精确行为的可变性不够好,因此在 Python 3 中已弃用。有更好的选项可用于测量性能或处理时间,请参阅 time.perf_counter()time.process_time() .

    【讨论】:

    • time.clock() 依赖于机器,目前已弃用。
    • @warownia1:Python 3 有更好的选择,是的。
    • @MartijnPieters 在这种情况下,为什么以下返回完全不同的答案? s = time.time() time.sleep(10) print((time.time()-s))s = time.clock() time.sleep(10) print((time.clock()-s)) @warownia1 python 3 选项是什么?我只需要测量一个函数执行的时间。
    • 如果你想衡量性能,使用timeit模块
    • @JRR:你使用了time.sleep(10)time.clock() 是否包含该时间取决于您的操作系统。我确实已经在我的答案中包含了该信息。
    猜你喜欢
    • 1970-01-01
    • 2015-11-23
    • 2013-02-13
    • 2011-04-26
    • 2016-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多