python 脚本中的函数计时

Timings of functions inside python script

我有一个包含几个复杂功能的脚本,看起来像这样

import time

def function1(a,b,c):
   print(a,b,c)

def function2(d,e,f):
   print(d,e,f)
...
...
def function7(g,h,i):
   print(g,h,i)

我正在尝试记录每个函数的时间,然后制作一个包含所有时间的数据帧以供分析。这是我尝试过的:

start1 = time.time()
function1(a,b,c)
end1 = time.time()
func1_time = end - start

start2 = time.time()
function2(d,e,f)
end2 = time.time()
func2_time = end - start
...
...
start7 = time.time()
function7(g,h,i)
end7 = time.time()
func7_time = end - start

以上是使用 time.time 的基本方法,但是,还有更多 elegant/convenient 的方法来实现吗?

当您看到 variable1variable2 等并且希望您的代码看起来更优雅时,答案在 90% 的情况下要么是列表要么是字典:

funs = [function1, function2, function3]
times = []
for fun in funs:
    start = time.time()
    fun(a,b,c)
    end = time.time()
    times.append(end - start)