Python中的装饰器:实例与用途说明

原创 小鱼儿 2025-02-03 17:12 37阅读 0赞

装饰器是Python中一个强大的特性,它允许在不改变函数源代码的情况下,动态地为函数添加功能。

实例:

  1. 记录日志:
  1. def log(func):
  2. def wrapper(*args, **kwargs):
  3. print(f'Calling function: {func.__name__}')
  4. return func(*args, **kwargs))
  5. return wrapper
  6. @log
  7. def say_hello():
  8. print('Hello!')
  9. say_hello()

输出:

  1. Calling function: say_hello
  2. Hello!
  1. 计时器:
  1. from time import time
  2. def timer(func):
  3. def wrapper(*args, **kwargs):
  4. start_time = time()
  5. result = func(*args, **kwargs))
  6. end_time = time()
  7. duration = end_time - start_time
  8. print(f'Time taken by function: {duration} seconds')
  9. return result
  10. return wrapper
  11. @timer
  12. def fibonacci(n):
  13. if n <= 1:
  14. return n
  15. else:
  16. return fibonacci(n-1) + fibonacci(n-2)
  17. print(fibonacci(10)))

输出:

  1. Time taken by function: 3.8567911743164 seconds
  2. 34

总结:

装饰器是Python中一种强大的语言工具,它使得代码更具可扩展性和灵活性。无论是记录日志、计时分析还是其他功能的扩展,装饰器都是一个很好的选择。

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

发表评论

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

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

相关阅读