在 python 中显示算法运行时间

Displaying algorithm run time in python

我需要显示使用时间库中可用的函数运行两种不同算法所花费的时间。我假设我必须使用 timeit() 函数,但是我不熟悉如何将它合并到代码中。到目前为止,这就是我所拥有的:

import time
def time2Algorithms(sound):

  # normalize(sound)

  largest = 0
  for s in getSamples(sound):
    largest = max(largest,getSampleValue(s) )
  multiplier = 32767.0 / largest
  for s in getSamples(sound):
    louder = multiplier * getSampleValue(s)
    setSampleValue(s,louder)
  explore(sound)

  # onlyMaximize(sound)

  for sample in getSamples(sound):
      value = getSampleValue(sample)
      if value >= 0:
        setSampleValue(sample,32767)
      if value < 0:
        setSampleValue(sample,-32768)
  explore(sound)

我的目标是显示归一化和最大化算法执行后的运行时间。

谢谢。

time 模块(您需要使用)不包含 timeit(不同的模块)。

只需添加一个

start = time.time()

就在您要计时的部分之前,例如

print(time.time() - start)

就在上述部分之后 -- 这将以秒为单位显示经过的时间。当然是按要求的装饰和格式:-)

你可以像这样使用 timeit

import timeit
start_time = timeit.default_timer()
# Your algo goes here
elapsed = timeit.default_timer() - start_time

还有时间模块,很简单

import time
start_time = time.time()
# Your algo goes here
elapsed = time.time() - start_time