当声明的一类继承一个具体的类别:

class C(dict):
    added_attribute = 0

该文件类 C 列出了所有的方法 dict (无论是通过 help(C)pydoc).

有没有一种方法来隐藏的继承的方法从自动生成的文件(文件串可以参照的基类,用于不复盖的方法)?或者是不可能的?

这将是有用的: pydoc 列出的功能,定义中的一个模块 其课程。因此,当类有一个很长的文件,很多不到有用的信息被印在新提供的功能模块,这使得文件更加难以利用(你已经跳过所有的文件继承的方法,直到达到特定的东西的模块正在记录).

有帮助吗?

解决方案

pydochelp内置不支持这一点,但没有理由你不能写自己的工具(可能通过修改是pydoc的源),将得到你想要的行为。只是走在字典的类来获得本地定义的属性,然后寻找东西,有商务部作为一个属性。

其他提示

我有同样的问题和解决它对蟒蛇2.7.6Windows(86)通过增加3线pydoc.py.说明:

  1. 做你自己的复制的Lib\pydoc.py
  2. 找到所有出现的 inherited 变量 (3倍,在我数)的文件和 它设为一个空洞的名单 后右,定义。例如,我有线809:

    attrs,继承=_split_list(attrs,lambda t:t[2]是该类)

和写 inherited = [] 在一个新的线以下。

现在它不打印继承方法了。

你可以给你一级元类特别的方法 __dir__ 返回其自己的名单的属性。Pydoc将使用这个名单。

注:

  • 这也会影响的行为 dir().
  • 在罕见的情况下,使用的元类已知的打开一个门户网站,一个地狱的层面。
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top