pythont天坑
装饰器
def demo(func):
print("1111111")
def wrapper(*args, **kwargs):
print("2222222")
return func()
print("3333333")
return wrapper
@demo
def test_wrapper():
"""测试装饰器"""
print("4444444")
pass
1111111
3333333
2222222
4444444
- 使用装饰器注意点
print(test_wrapper.__name__)
print(test_wrapper.__doc__)
test_wrapper
测试装饰器
@demo
def test_wrapper():
"""测试装饰器"""
pass
print(test_wrapper.__name__)
print(test_wrapper.__doc__)
wrapper
None
from functools import wraps
def demo(func):
@wraps(func)
def wrapper(*args, **kwargs):
return func()
return wrapper
@demo
def test_wrapper():
"""测试装饰器"""
pass
print(test_wrapper.__name__)
print(test_wrapper.__doc__)
运行结果
test_wrapper
测试装饰器