下面是Python实现计算函数或程序执行时间的完整攻略。
1. 使用装饰器计算函数执行时间
在Python中,可以使用装饰器来计算函数的执行时间。装饰器是指一个函数,它可以接收一个函数作为参数,并返回一个新的函数。使用装饰器,可以在不改变被装饰函数代码的情况下给该函数添加一些额外的功能。
下面是一个计算函数执行时间的装饰器:
import time
def function_timer(func):
def wrapper(*args, **kwargs):
start_time = time.time()
result = func(*args, **kwargs)
end_time = time.time()
print("函数 %s 的执行时间为 %f 秒" % (func.__name__, end_time - start_time))
return result
return wrapper
在上面的代码中,function_timer()
就是我们定义的装饰器,它接收一个函数作为参数 func
。wrapper()
则是一个新函数,用于包装被装饰函数。在 wrapper()
中,我们首先计算函数执行的开始时间,然后调用被装饰函数,并使用 result
保存函数的返回值。最后计算函数执行的结束时间,并输出函数的执行时间。
我们可以使用该装饰器来计算任何一个函数的执行时间。例如下面的示例中,我们使用 function_timer
装饰器来计算一个函数执行的时间:
@function_timer
def calculate_sum(num_list):
result = sum(num_list)
return result
num_list = range(1000000)
calculate_sum(num_list)
在上面的代码中,我们定义了一个函数 calculate_sum()
,并使用 function_timer
装饰器来计算该函数执行的时间。我们传递一个包含 1000000 个元素的列表作为参数,函数会计算这个列表中元素的总和。使用 function_timer
装饰器,我们可以看到该函数执行的时间。
2. 使用Python标准库计算程序执行时间
除了使用装饰器计算函数执行时间之外,还可以使用Python标准库中的 time
模块来计算程序执行时间。下面是一个示例代码:
import time
start_time = time.time()
# 这里是程序的主要代码
for i in range(1000000):
pass
end_time = time.time()
print("程序执行时间为 %f 秒" % (end_time - start_time))
在上面的示例代码中,我们定义了一个 start_time
变量,并使用 time
模块中的 time()
函数计算开始执行代码的时间,然后运行我们的程序。程序主要的代码是一个包含 1000000 个 pass
语句的循环,我们使用该循环来模拟一个耗时的程序。当程序运行结束时,我们再次调用 time()
函数来计算程序运行结束的时间,并计算程序的执行时间。
以上就是Python实现计算函数或程序执行时间的完整攻略及示例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python实现计算函数或程序执行时间 - Python技术站