help()在哪里找到Python中的信息?

Pit*_*kos 3 python helper built-in python-2.7

我发现help()最近内置的内容为模块,函数,方法,类等打印了一些信息.但它究竟在哪里找到它显示的信息?Python文档没有给出一个关于此的提示.

>>> import base64
>>> help(base64)
Help on module base64:

NAME
    base64 - RFC 3548: Base16, Base32, Base64 Data Encodings

FILE
    /usr/lib/python2.7/base64.py
..
Run Code Online (Sandbox Code Playgroud)

the*_*eye 5

如果你只是这样做help(help),你就会得到

Help on _Helper in module site object:

class _Helper(__builtin__.object)
 |  Define the builtin 'help'.
 |  This is a wrapper around pydoc.help (with a twist).
 |  
 |  Methods defined here:
 |  
 |  __call__(self, *args, **kwds)
 |  
 |  __repr__(self)
 |  
 |  ----------------------------------------------------------------------
 |  Data descriptors defined here:
 |  
 |  __dict__
 |      dictionary for instance variables (if defined)
 |  
 |  __weakref__
 |      list of weak references to the object (if defined)
Run Code Online (Sandbox Code Playgroud)

基本上,help从中得到它的输入pydoc.help.报价,pydoc文件,

对于模块,类,函数和方法,显示的文档是从对象的docstring(即__doc__属性)派生的,并且是递归的可记录成员.如果没有docstring,则pydoc尝试从源文件中类,函数或方法的定义上方或模块顶部的注释行块中获取描述(请参阅参考资料inspect.getcomments()).

内置函数help()调用交互式解释器中的联机帮助系统,该解释器用于pydoc在控制台上将文档生成为文本.


但它究竟在哪里找到它所显示的信息?

上面引用的粗体文字回答了这个问题.