装饰器运用问题
来源:12-13 装饰器 六
一直2下去3482599
2018-01-31
如果在同一个函数,有的地方需要使用装饰器的功能,有的地方不需要装饰器里新加的功能,这种情况怎么处理,加了那个语法糖后就不能正常调用函数了吗
写回答
2回答
-
那就有的地方打装饰器,有的地方不打,打不打看你自己的需求。比如你有的函数要记日志有的不记日志,那就自己选择。
042018-01-31 -
慕斯卡8323326
2018-02-17
你这个问题提的好,不然还没往这边想!照着网上试了试,确实很有用,就是写起来有点麻烦
import time
def decorator(*dargs, **dkw):
def wrapper(func):
def _wrapper(*args, **kw):
if dargs[0] == 0:
print(time.time())
else:
print("No time")
return func(*args, **kw)
return _wrapper
return wrapper
@decorator(1)
def f(x):
print(x)
f('function')
00