Python 中的“__docformat__”有什么用?
What is "__docformat__" used for in Python?
我已经在 Python 中编码了大约一年,我刚刚在 Theano tutorial 中遇到了一些代码,这些代码在文件顶部声明了一个变量:
__docformat__ = 'restructedtext en'
互联网搜索产生了 this PEP 文档。虽然它仍然没有清楚地解释您何时/为什么要指定此变量。
我应该在所有 Python 代码的顶部声明它吗?
__docformat__
的要点是允许 python 文档生成器工具,例如 epydoc 知道如何正确解析模块文档(例如,期望使用哪种标记语言)。
来自epydoc docs:
To specify the markup language for a module, you should define a module-level string variable __docformat__, containing the name of the module's markup language. The name of the markup language may optionally be followed by a language code (such as en for English). Conventionally, the definition of the __docformat__ variable immediately follows the module's docstring
然而,许多工具如epydoc
也支持通过命令行指定标记语言(如epydoc --docformat restructuredtext
),因此没有严格要求包含docformat。更重要的是您的项目或组织的编码约定。
我已经在 Python 中编码了大约一年,我刚刚在 Theano tutorial 中遇到了一些代码,这些代码在文件顶部声明了一个变量:
__docformat__ = 'restructedtext en'
互联网搜索产生了 this PEP 文档。虽然它仍然没有清楚地解释您何时/为什么要指定此变量。
我应该在所有 Python 代码的顶部声明它吗?
__docformat__
的要点是允许 python 文档生成器工具,例如 epydoc 知道如何正确解析模块文档(例如,期望使用哪种标记语言)。
来自epydoc docs:
To specify the markup language for a module, you should define a module-level string variable __docformat__, containing the name of the module's markup language. The name of the markup language may optionally be followed by a language code (such as en for English). Conventionally, the definition of the __docformat__ variable immediately follows the module's docstring
然而,许多工具如epydoc
也支持通过命令行指定标记语言(如epydoc --docformat restructuredtext
),因此没有严格要求包含docformat。更重要的是您的项目或组织的编码约定。