在 Python 中使用装饰器创建计时函数
Yahya Irmak
2022年5月18日
装饰器是 Python 中常用的有用工具。我们可以在使用装饰器执行函数之前和之后执行我们想要的操作。
本文将解释使用 Python 的 time
模块使用装饰器创建计时函数。
在 Python 中使用装饰器创建计时函数
time
模块提供各种与时间相关的功能。该模块的 time()
函数返回自纪元(1970 年 1 月 1 日 00:00:00)以来经过的秒数。
要计算函数的执行时间,我们可以将此模块与装饰器一起使用。
装饰器允许修改 Python 中函数或类的行为。它们允许程序员包装另一个函数来扩展包装函数的行为,而无需永久修改它。
首先,在下面的示例中导入了 time
模块。然后,定义了 timer
函数。
该函数将用作装饰器。
main_func
是计算其执行时间的函数。它只是在这里执行一个循环操作作为示例。
start
和 end
值是在 time()
命令在 main_func
执行前后使用 time()
命令在 timer
函数内计算的。这两个值之间的差异给出了 main_func
函数的执行时间。
from time import time
def timer(function):
def wrapper(*args, **kwargs):
start = time()
function(*args, **kwargs)
end = time()
print(f'It took {(end-start):.3f} seconds')
return wrapper
@timer
def main_func():
for i in range(1000000):
continue
main_func()
Author: Yahya Irmak
Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.
LinkedIn