9

我一直试图找出我的文档字符串中的这个表达式有什么问题。我sphinx.ext.mathjax在 python sphinx v1.2b 中使用扩展。文档字符串:

.. math::

    w_k^* = \min_{w_k} \ell_k(w_k) + \lambda\left(\alpha||w_k||_1 
    + \frac{1}{2}(1-\alpha) ||w_k||^2\right)

这是出现的: 在此处输入图像描述

但它继续产生这个奇怪的警告,根本不渲染表达式:

WARNING: Block quote ends without a blank line; unexpected unindent.

奇怪的是,如果我删除\alpha, \left, \right,\frac符号,表达式会呈现良好而没有警告。不知道为什么\lambda会被支持而不是\alpha

4

1 回答 1

16

狮身人面像文档

请记住,当您将数学标记放入autodoc 读取的Python 文档字符串中时,您要么必须将所有反斜杠加倍,要么使用 Python 原始字符串 ( r"raw")。

这是必要的,以便正确解释 LaTeX 命令,例如\alpha\a并且一些其他序列在字符串文字中具有特殊含义)。

这是问题中文档字符串的原始版本,带有三引号,前缀为r

r"""
.. math::
 
    w_k^* = \min_{w_k} \ell_k(w_k) + \lambda\left(\alpha||w_k||_1 
    + \frac{1}{2}(1-\alpha) ||w_k||^2\right)
"""
于 2013-05-09T20:42:26.820 回答