Python构建一个记录函数运行的装饰器类
本文代码定义了一个装饰器类,用于记录函数的运行信息,代码详细演示的装饰器的定义和调用方式,稍加改造可以用于记录函数的执行时间和调试。
""" 皮蛋编程(https://www.pidancode.com) 创建日期:2022/4/6 功能描述:Python构建一个记录函数运行的装饰器类 """ import datetime class Decorator(object): def __init__(self, func): self.func = func return def __call__(self, *args, **kwargs): print("{} 调用开始:{}".format(self.func.__name__, datetime.datetime.now())) result = self.func(*args, **kwargs) print("{} 调用截止:{}".format(self.func.__name__, datetime.datetime.now())) return result # 使用装饰器 @Decorator def test_func(a, b, c): print("test_func: a=%s, b=%s, c=%s" % (a, b, c)) return 1 test_func(1, 2, 3)
输出结果:
test_func 调用开始:2022-04-06 09:17:16.565854
test_func: a=1, b=2, c=3
test_func 调用截止:2022-04-06 09:17:16.565874
代码在Python3.9下测试通过。
相关文章