В Sphinx, как включить строки документации / комментарии, расположенные в модуле, но вне класса и методов
У меня есть utils
Модуль в моей упаковке. Он состоит из нескольких разных методов, которые не требуют реализации.
Я хотел бы разместить некоторые общие комментарии / документацию внутри этого utils
файл, такой как:
import os
import json
"""
Miscellaneous methods that help in <<blah blah>>
Does not require explicit instantiation.
The following actions can be performed:
=============== ===============
Action Method
=============== ===============
Get a :meth:`methoda`
Get b :meth:`methodb`
"""
def methoda(data):
"Gets A ..."
...
def methodb(data):
"Gets B ..."
...
Как видно выше, в строке документации есть таблица, содержащая ссылки на отдельные методы. В настоящее время мой index.rst
имеет эту часть, чтобы включить utils
:
Utilities
============
.. automodule:: packagename.utils
:members:
В настоящее время я получаю строки документации отдельных методов, правильно отображаемые в документации, но не строку документации верхнего уровня модуля (вне какого-либо класса или метода). Каков наилучший способ, чтобы сфинкс включал в себя все вышеперечисленное?
Одним из вариантов может быть перемещение строки документации верхнего уровня за пределы этого файла, например: index.rst
и т. д. Но я бы предпочел не делать этого и сохранить его в исходном файле.
1 ответ
Спасибо Джоншарпу за его комментарий, который привел меня к правильному способу сделать это.
Для дальнейшего использования другими пользователями я в основном переместил строки документации в начало файла:
"""
Miscellaneous methods that help in <<blah blah>>
Does not require explicit instantiation.
The following actions can be performed:
=============== ===============
Action Method
=============== ===============
Get a :meth:`methoda`
Get b :meth:`methodb`
"""
import os
import json
def methoda(data):
"Gets A ..."
...
def methodb(data):
"Gets B ..."
...
И это все! Все работает.