epydoc隐藏一些类函数吗?

4 python docstring private epydoc

我的班上有一些方法,只能供该班的其他方法使用。我已经给他们的名字加上了“ _”。我可以对epydoc隐藏这些功能吗?这是个好主意吗?

我应该使用“ _”还是双下划线?老实说,在某些地方阅读了它们之后,我没有发现任何不同。是否应仅在模块/类(实例)函数上使用此命名约定?还是变量?

Squ*_*ree 5

如果要隐藏所有私有方法和私有变量,请将选项'--no-private'传递给epydoc。

请注意-对于epydoc-在以下情况下,方法或变量是私有的:

  • 其名称以下划线“ _”开头
  • 其名称不以下划线“ _”结尾,并且
  • 您没有在特殊的all词典中包含其名称。

另外,您可以使用'undocumented'标签强制epydoc完全忽略某些方法或变量。

例如(在这里我假设使用的是ReStructured Text格式):

class MyClass:
  """Some neat description

  :undocumented: x
  """

  def _y(self): pass
  def x(self): pass
  def z(self): pass
Run Code Online (Sandbox Code Playgroud)

将导致文档仅包含_y(除非使用了'--no-private'选项)和z。即使x不是私有的,也不会有任何事情。

私有方法在最终文档中是否应该全部可见是一个问题。对我来说,文档是由对内部实现不感兴趣的人阅读的。私有方法最好完全隐藏。