Discuss / Python / 应该还能再精简

应该还能再精简

Topic source

def practice(para): if isinstance(para, str): def decorator(func): def wrapper(*args, **kw): print ("begin %s function %s..." %(para, func.__name__)) func(*args, **kw) print ("end %s function %s..." %(para, func.__name__)) return wrapper return decorator else: def wrapper(text="call", *args, **kw): print ("begin %s function %s..." %(text, para.__name__)) para(*args, **kw) print ("end %s function %s..." %(text, para.__name__)) return wrapper

@practice def demo1(): print ("function demo1")

@practice("execute") def demo2(): print ("function demo2")

demo1() print ("-----------------------分割线---------------------") demo2()


  • 1

Reply