Python中的装饰器:修改或增强其他函数功能

360影视 2025-02-05 05:13 2

摘要:Python中的装饰器是一种用来修改或增强其他函数功能的函数,它可以在不改变原函数代码和调用方式的情况下,给原函数添加一些额外的功能,比如日志记录、性能测试、权限检查等。装饰器的返回值也是一个函数,它通常包含了对原函数的调用。装饰器的使用方法是在原函数的定义前

Python中的装饰器是一种用来修改或增强其他函数功能的函数,它可以在不改变原函数代码和调用方式的情况下,给原函数添加一些额外的功能,比如日志记录、性能测试、权限检查等。装饰器的返回值也是一个函数,它通常包含了对原函数的调用。装饰器的使用方法是在原函数的定义前加上@符号和装饰器的名称,例如:

# 定义一个装饰器,用来打印函数的执行时间def timer(func): def wrapper(*args, **kwargs): import time start = time.time result = func(*args, **kwargs) end = time.time print(f"{func.__name__} took {end - start} seconds to run") return result return wrapper# 使用装饰器@timerdef add(x, y): return x + y# 调用原函数print(add(10, 20))

输出:

add took 0.0 seconds to run30

可以看到,使用装饰器后,原函数add不仅返回了两个数的和,还打印了执行时间。这样就实现了在不修改原函数代码的情况下,给原函数增加了新的功能。

来源:自由坦荡的湖泊AI

相关推荐