Python调用已定义函数的文档

时间:2018-02-20 07:55:28

标签: python-2.7 anaconda

我是python的新手。只是尝试使用 doc 获取函数中定义的注释,但是会收到错误。

这是我的代码:

def nam(i):
    """passing the name to
    a function"""
    print('hello  '+i+' good mornin')

这是错误:

 Traceback (most recent call last):
  File "<pyshell#2>", line 1, in <module>
    print(nam._doc_)
AttributeError: 'function' object has no attribute '_doc_'

1 个答案:

答案 0 :(得分:1)

_doc_(每边的单下划线)替换为__doc__(双下划线)

为了说明,让我们定义您的功能并显示文档:

>>> def nam(i):
...     """passing the name to
...     a function"""
...     print('hello  '+i+' good mornin')
... 
>>> nam.__doc__
'passing the name to\n    a function'

上述方法有效。但是,下面的方法失败了:

>>> nam._doc_
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'function' object has no attribute '_doc_'

原因是__doc__每侧需要两个下划线字符,而不仅仅是一个。

文档

来自python online documentation

  

docstring
字符串文字,显示为第一个表达式   在类,功能或模块中。虽然套件是被忽略的   执行后,它被编译器识别并放入__doc__   封闭类,函数或模块的属性。因为它是   通过内省提供,它是规范的地方   对象的文档。