装饰器

import functools

def wrapper(func):

  @functools.wraps(func)     #设置函数的原信息

  def inner(*args,**kwargs):

    return func(*args,**kwargs)

  return inner

 

@wrapper

def f1():

  pass

print(f1.__name__)      #结果:f1  而不是inner,因为加了@functools.wraps(func)  的装饰器

 

posted @ 2018-03-21 15:26  星雨5213  阅读(46)  评论(0)    收藏  举报