Python之函数闭包加返回值

import time
def timmer(func):   #func = test
    def wrapper():
        start_time = time.time()
        res = func()     # 就是在运行test()
        stop_time = time.time()
        print("运行时间是%s" % (stop_time-start_time))
        return res
    return wrapper
@timmer   #@timmer 相当于 test =timmer(test)
def test():
    time.sleep(3)
    print("test函数运行完毕")
    return "这是test返回值     "

res = test()   #理解核心,该步骤其实是在运行wrapper
print(res)
#输出结果
test函数运行完毕
运行时间是3.000171661376953
这是test返回值     
image.png

你可能感兴趣的:(Python之函数闭包加返回值)