\r 是否代表狮身人面像中的某些东西?

Does \r stand for something in sphinx?

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

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

它没有正确呈现。它像一个新行一样角度并给我一个错误:内联解释文本或短语参考没有结束字符串的开始字符串 如果我用 \langle 替换 \rangle 一切正常。我该如何解决这个问题?

解决方案是用双斜杠转义或在三重引号中放置 "r"(不带引号),这会禁用对引号内斜杠的解释:

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

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

相关摘录:

The backslash () character is used to escape characters that otherwise have a special meaning, such as newline, backslash itself, or the quote character.

Both string and bytes literals may optionally be prefixed with a letter 'r' or 'R'; such strings are called raw strings and treat backslashes as literal characters. As a result, in string literals, '\U' and '\u' escapes in raw strings are not treated specially.