【问题标题】:Difference between ":", "@" and nothing in python docstrings“:”,“@”和python文档字符串中的任何内容之间的区别
【发布时间】:2014-07-20 04:26:04
【问题描述】:

我只是想更好地了解 Python 文档字符串的布局(""" """ 之间)

我见过具有不同布局的文档字符串...例如...

"""
@DESCRIPTION
Ive seen tags STARTING with an at-sign

:DESCRIPTION:
Tags with colons

DESCRIPTION
And tags with nothing

"""

这些是否有功能性作用? @ 是否与 Elixir 相关联?或者这些只是开发人员之间的偏好?我已经查看了文档字符串的样式指南,但看不到它在哪里解决了这些问题......

谢谢!

【问题讨论】:

    标签: formatting documentation docstring python-elixir


    【解决方案1】:

    如果您想将文档字符串转换为文档,您可以添加额外的标记来帮助您正在使用的文档工具应用额外的格式。

    @ 表示Epydoc 字段。

    分号 : 是 sphinx 的第一个(参见 Sphinx 文档或上面的链接)。

    这里有一个相关的帖子:What are these tags @ivar @param and @type in python docstring?

    可能还有其他用途(可能包括 Elixir,这不是我熟悉的技术,无法评论)。

    希望对您有所帮助。

    【讨论】:

      【解决方案2】:

      格式

      Python 文档字符串可以写成以下几种格式:

      - Javadoc

      从历史上看,类似 javadoc 的风格很流行。它被Epydoc(称为Epytext格式)用来生成文档。

      例子:

      """
      This is a javadoc style.
      
      @param param1: this is a first param
      @param param2: this is a second param
      @return: this is a description of what is returned
      @raise keyError: raises an exception
      """
      

      - 恢复

      如今,可能更流行的格式是 reStructuredText (reST) 格式,Sphinx 使用它来生成文档。

      例子:

      """
      This is a reST style.
      
      :param param1: this is a first param
      :param param2: this is a second param
      :returns: this is a description of what is returned
      :raises keyError: raises an exception
      """
      

      - 谷歌

      Google 有自己的格式,非常常用。它也可以被 Sphinx 解释。请注意,Numpy 建议遵循他们自己的基于 Google 格式且可供 Sphinx 使用的 numpydoc

      例子:

      """
      This is a groups style docs.
      
      Parameters:
          param1 - this is the first param
          param2 - this is a second param
      
      Returns:
          This is a description of what is returned
      
      Raises:
          KeyError - raises an exception
      """
      

      转换/生成

      可以使用Pyment 之类的工具为尚未记录的 Python 项目自动生成文档字符串,或者将现有的文档字符串(可以混合多种格式)从一种格式转换为另一种格式。

      注意:示例取自Pyment documentation。您可以查看this tuto 了解有关文档字符串的更多信息。

      【讨论】:

      • 很好的答案。但我刚刚花了一个多小时试图将 reST 格式的 pydocs 转换为 HTML 或 Markdown 之类的东西,我对显然涉及的设置量感到惊讶,例如对于狮身人面像。我想象一些实用程序可以直接开箱即用。你知道这样的工具吗,或者你能指出一些明确的步骤吗?谢谢!
      • @MichaelScheper 你可以看看this thread
      猜你喜欢
      • 2017-01-29
      • 1970-01-01
      • 2011-03-22
      • 2018-10-08
      • 2013-05-26
      • 2013-07-28
      • 2011-03-18
      • 2016-08-16
      • 2022-01-22
      相关资源
      最近更新 更多