1. 程式人生 > >使用裝飾器,檢視函式的執行時間。深度解析python中對時間函式的使用

使用裝飾器,檢視函式的執行時間。深度解析python中對時間函式的使用

# Python time clock() 函式以浮點數計算的秒數返回當前的CPU時間。用來衡量不同程式的耗時,比time.time()更有用。
# 這個需要注意,在不同的系統上含義不同。在UNIX系統上,它返回的是"程序時間",它是用秒錶示的浮點數(時間戳)。
# 而在WINDOWS中,第一次呼叫,返回的是程序執行的實際時間。而第二次之後的呼叫是自第一次呼叫以後到現在的執行時間。
# (實際上是以WIN32上QueryPerformanceCounter()為基礎,它比毫秒錶示更為精確)
import time
def zhaungshiqi(func):
    def set_fun(*args,**kwargs):
        #使用time.time的時候,程式執行時間太短的話,則會預設把時間歸0
        time.clock()
        func(*args,**kwargs)
        endtime = time.clock()
        print("函式執行的時間",endtime)
    return set_fun

# 測試函式
@zhaungshiqi
def tuzi_number(month):
    #range函式包前不包後
    time.sleep(1)
    tuzi = [1,1]
    for i in range(1,month-1):
        if month <3:
            break
        else:
            x= tuzi[i-1]+tuzi[i]
            tuzi.append(x)
    print(tuzi)
tuzi_number(20)