def wrapper1(function):
print("In wrapper1 pre")
@functools.wraps(function)
def wrapper(*args, **kwargs):
print("In wrapper1 wrapper")
args = [float(arg) for arg in args]
return float(function(*args, **kwargs))
print("In wrapper1 post")
return wrapper
def wrapper2(function):
print("In wrapper2 pre")
@functools.wraps(function)
def wrapper(*args, **kwargs):
print("In wrapper2 wrapper")
args = [float(arg) for arg in args]
return float(function(*args, **kwargs))
print("In wrapper2 post")
return wrapper
@wrapper1
@wrapper2
def mean(first, second, *rest):
number = (first, second) + rest
return sum(number) / len(number)
In wrapper2 pre
In wrapper2 post
In wrapper1 pre
In wrapper1 post
mean(1,'5')
In wrapper1 wrapper
In wrapper2 wrapper
python 修饰器
最新推荐文章于 2025-05-25 21:16:38 发布
本文介绍了一种使用Python装饰器实现函数参数类型转换的方法,并通过一个计算平均值的例子展示了如何应用这些装饰器。
268

被折叠的 条评论
为什么被折叠?



