深入理解Python中的装饰器

原创 超、凢脫俗 2025-02-14 20:03 36阅读 0赞

在 Python 中,装饰器(Decorator)是一种特殊类型的函数,它允许你修改或增强其他函数的功能,但又不改变原有函数的代码。

装饰器的工作原理如下:

  1. 定义一个装饰器函数,这个函数通常会接受一个被装饰的函数作为参数,并返回一个新的函数。

  2. 在需要修改或者增强功能的地方,使用 @ 装饰器来应用你之前定义的装饰器。

例如,一个简单的计时装饰器:

  1. def time_decorator(func):
  2. def wrapper(*args, **kwargs):
  3. start_time = time.time()
  4. result = func(*args, **kwargs))
  5. end_time = time.time()
  6. print(f'Function {func.__name__}} took '
  7. f'{end_time - start_time} seconds')
  8. return result
  9. return wrapper

然后,你可以在需要计时的函数前使用 @time_decorator 装饰器:

  1. @time_decorator
  2. def slow_function():
  3. time.sleep(5)
  4. print('Slow function completed')
  5. slow_function()

这样,每次调用 slow_function 时,都会自动记录并打印出执行时间。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,36人围观)

还没有评论,来说两句吧...

相关阅读