Sphinx未正确呈现文档字符串中的数学表达式 [英] Math expression in docstring is not rendered correctly by Sphinx
本文介绍了Sphinx未正确呈现文档字符串中的数学表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我一直在尝试找出我的文档字符串中的这个表达式有什么问题。我使用的是pythonsphinxv1.2b中的sphinx.ext.mathjax
扩展。文档字符串:
.. math::
w_k^* = min_{w_k} ell_k(w_k) + lambdaleft(alpha||w_k||_1
+ frac{1}{2}(1-alpha) ||w_k||^2
ight)
显示的内容如下:
但它继续生成此奇怪的警告,并且根本不呈现该表达式:
WARNING: Block quote ends without a blank line; unexpected unindent.
非常奇怪的是,如果我删除alpha
、left
、
ight
、frac
符号,则表达式在没有警告的情况下呈现得很好。不确定为什么支持lambda
而不支持alpha
。
推荐答案
请记住,当您将数学标记放入由自动文档读取的Python文档字符串中时,您必须将所有反斜杠都加两倍,或者使用Python原始字符串(
r"raw"
)。
这是必需的,以便正确解释LaTeX命令,如alpha
(a
和其他几个序列的字符串文字中有special meaning)。
这是问题中文档字符串的原始版本,带有三引号,前缀为r
:
r"""
.. math::
w_k^* = min_{w_k} ell_k(w_k) + lambdaleft(alpha||w_k||_1
+ frac{1}{2}(1-alpha) ||w_k||^2
ight)
"""
这篇关于Sphinx未正确呈现文档字符串中的数学表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文