在Sphinx文档中显示词典数据

2022-04-20 00:00:00 python python-sphinx

问题描述

我在Python项目源代码中有一个描述缺省配置值的词典。这本词典很长。我希望看到Sphinx文档中除"查看源代码"之外的其他格式的词典,这样人们就可以快速检查缺省值。

当与Sphinx AutoDoc一起使用时,Sphinx是否提供将类似字典的变量格式化为人类可读格式的选项?我目前正在使用.. automodule::转储整个模块,我在文档中得到的词典是一个长字符串转储(没有换行符、漂亮的印刷体等等),基本上不可读。

  • Sphinx是否提供打印单个源代码变量的值的工具

  • 有没有漂亮的印刷品?


解决方案

这可能不是最好的解决方案(最好编写一个适当的指令来输出打印精美的词典),但目前可以使用:

将给定的自定义exec指令here添加到您的Sphinx.conf文件中,然后在要打印词典的.rst文件中,执行如下操作:

.. exec::
    import json
    from some_module import some_dictionary
    json_obj = json.dumps(some_dictionary, sort_keys=True, indent=4)
    print '.. code-block:: JavaScript

    %s

' % json_obj

这将在您的文档中的一个JavaScript代码块中打印出您的词典(我发现这是在文档中呈现词典的最佳方式)。

相关文章