python - Sphinx 文档常量替换

标签 python python-sphinx substitution restructuredtext cross-reference

我使用 Sphinx 为我的 Python 项目生成文档。我需要在文档中描述一些默认值。但我不想将代码中的值复制粘贴到文档字符串,因为它们以后很容易出现分歧。所以问题是:是否可以用常量的值替换对常量的引用?

我正在谈论这样的事情(我已经编写了 :py:const_value: 指令):

DEFAULT = 123

class Foo:
   """Default value for something is :py:const_value:`DEFAULT`."""

我想获得这样的文档:

Default value for something is 123.

我尝试搜索,但恐怕 Sphinx 中没有这样的功能,或者“不断替换”不是正确的术语。

如果 Sphinx 无法做到这一点,是否有其他方法来避免这种重复

最佳答案

根据 sphinx 文档 ( reStructuredText Primer ),您可以获得的最接近的似乎是使用替换,这是使用 replace:: 标记创建的。例如:

.. |PI| replace:: 3.1415

The value of PI is |PI|.

应该生成

The value of PI is 3.14159.

可能的替代方案是 python 域指令 :py:const:,它插入指向值定义的链接,而不是替换实际值。

关于python - Sphinx 文档常量替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23295771/

相关文章:

regex - 根据匹配的模式替换匹配项

Python 包在终端上导入,但不在 IDLE 上导入

python - 删除 Pandas DataFrame 中重复超过 5 次的值

python - 为什么Sphinx会生成json?

python - sphinx 文档中自动模块生成的所有类的目录/列表

java - 使用 Python-Sphinx 解析 javadoc

python:组合键,例如 óíúéáöïò 和 pyhook

python - Fabric 2.x : tar and untar through pipe

algorithm - Maxima- 以更多算法方式进行符号变量替换

regex - 为什么 perl regex .* 无法识别空分隔记录中的\n。 $/="\0'