在 Python 中使用裝飾器建立計時函式

Yahya Irmak 2022年5月18日
在 Python 中使用裝飾器建立計時函式

裝飾器是 Python 中常用的有用工具。我們可以在使用裝飾器執行函式之前和之後執行我們想要的操作。

本文將解釋使用 Python 的 time 模組使用裝飾器建立計時函式。

在 Python 中使用裝飾器建立計時函式

time 模組提供各種與時間相關的功能。該模組的 time() 函式返回自紀元(1970 年 1 月 1 日 00:00:00)以來經過的秒數。

要計算函式的執行時間,我們可以將此模組與裝飾器一起使用。

裝飾器允許修改 Python 中函式或類的行為。它們允許程式設計師包裝另一個函式來擴充套件包裝函式的行為,而無需永久修改它。

首先,在下面的示例中匯入了 time 模組。然後,定義了 timer 函式。

該函式將用作裝飾器。

main_func 是計算其執行時間的函式。它只是在這裡執行一個迴圈操作作為示例。

startend 值是在 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 avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

相關文章 - Python Decorator