在sphinx的头函数声明部分包含python源代码

时间:2012-09-24 11:53:07

标签: python documentation python-2.7 python-sphinx

我是狮身人面像的新手。 我面临的情况是我有一个复杂的功能,在spphinx文档中我想直接展示函数的一些示例用法。

def myComplicatedFunction(status):
    """Here I have a brief description

    :param status: explanation

    :returns: explanation
    """
    <<< code >>>

    return statstics

在sphinx-part中的某个地方,我想包含一些显示示例输入和示例输出的python代码。但无论我做什么(使用`` :: )作为文档表明它没有得到语法高亮。它只是作为简单的文本包含在内,使阅读变得困难。

我应该如何在sphinx中包含python代码示例?

2 个答案:

答案 0 :(得分:2)

模拟Python交互式会话;以>>>开头的块自动被视为Python源代码:

def myComplicatedFunction(status):
    """Here I have a brief description

    :param status: explanation

    :returns: explanation

    >>> myComplicatedFunction('status value')
    {'foo': 2, 'bar': -400}

    """
    # Code

    return statistics

答案 1 :(得分:0)

.. code-block:: language
      def foo()....

适用于python,但请确保安装了pygments。

在somethingconf.py配置文件中,这两个语句很有意思:

pygments_style = 'sphinx'

并根据输出写出类似

的内容
options['add_syntax_highlighting'] = True