在 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

最新更新