码迷,mamicode.com
首页 > 其他好文 > 详细

第十二天 生成器再进阶

时间:2018-12-29 11:20:47      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:执行   name   函数名   小知识点   rom   变调   进阶   小知识   print   

小知识点:

  print(函数名.__name__)就可以打印函数的以字符串的名字的功能。

  print(函数名.__doc__)打印函数文档的功能。

  使用装饰器会改变函数__name__的输入。但是如果想使用原本函数的名字和文档的话,就可以使用以下模块:

from functools import wraps:

def wrapper(func):

  @wraps(func)            #这个功能就可以不改变调用原始函数本身的__name__和__doc的结果!

  def inner (*args,**kwargs):

    print(‘在被装饰函数之前执行的功能‘)

    ret = func(*args,**kwargs)

    print(‘在被装饰函数之后执行的功能‘)

    return ret

  return inner

@wrapper

def func(...):

  print(‘函数本身的功能)

ret = func(...)

print(func.__name__)

print(func.__doc__)

 

第十二天 生成器再进阶

标签:执行   name   函数名   小知识点   rom   变调   进阶   小知识   print   

原文地址:https://www.cnblogs.com/wanghanyao/p/10193640.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!