import functools from inspect import isfunction
def log(*args): def decorator(func): @functools.wraps(func) def wrapper(*func_args, **kwargs): print('begin call') if not isfunction(args[0]): print('%s %s:' % (args[0], func.__name__)) res=func(*func_args, **kwargs) print('end call') return res return wrapper if isfunction(args[0]): return decorator(args[0]) else: return decorator
Sign in to make a reply
伞在雨中开花
import functools from inspect import isfunction
def log(*args): def decorator(func): @functools.wraps(func) def wrapper(*func_args, **kwargs): print('begin call') if not isfunction(args[0]): print('%s %s:' % (args[0], func.__name__)) res=func(*func_args, **kwargs) print('end call') return res return wrapper if isfunction(args[0]): return decorator(args[0]) else: return decorator