\ r \ n代表狮身人面像的东西?

时间:2017-10-03 11:10:26

标签: python python-sphinx mathjax docstring numpydoc

我正在按照numpy docstring指南编写我的文档字符串。然后我使用sphinx的autodoc来生成我的文档。在一些文档字符串中,我使用的是LaTeX公式(sphinx.ext.mathjax)。 \r似乎意味着像新线一样特殊。如果我有以下命令:

"""
This :math:`\langle a, b\rangle` denotes the dot product of a and b
"""

它没有正确渲染。它将一个角度放到一个新行并给我一个错误:内联解释的文本或短语引用start-string without end-string 如果我用\ langle替换\ rangle一切正常。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

解决方案是使用双斜线转义或从三引号中放入“r”(不带引号),这会禁用引号内斜杠的解释:

r"""
This :math:`\langle a, b\rangle` denotes the dot product of a and b
"""

有几个前缀会影响字符串文字的定义,请参阅documentation of Python

相关摘录:

  

反斜杠()字符用于转义字符   否则具有特殊含义,例如换行符,反斜杠本身,   或引号字符。

  

字符串和字节文字都可以选择以a为前缀   字母'r'或'R';这样的字符串称为原始字符串并处理   反斜杠作为文字字符。结果,在字符串文字中,   原始字符串中的'\ u'和'\ u'转义不会被特别处理。