Sphinx autodoc дублирует имя модуля и имя функции

У меня есть модуль Python со следующей структурой:

my_mod
|--- __init__.py
|--- mod1
|    |---- __init__.py
     |---- testA.py
     |---- testB.py
     |---- testC.py

Внутри каждого testX.py есть отдельная функция с именем testX. Эти функции велики, поэтому, чтобы мои файлы были управляемыми, я разделил testA,B и C. Чтобы избежать доступа к этим функциям таким образом:

import my_mod.mod1.testA.testA

мой mod1/__init__.py Файл структурирован следующим образом:

from .testA import testA
from .testB import testB
from .testC import testC

Так что мои функции теперь доступны как

import my_mod.mod1.testA

Это ведет себя как ожидалось. Однако, когда я перехожу к autodoc мой модуль со Sphinx, документация пропускает эту функцию в __init__ и в итоге мои функции документируются как

my_mod.mod1.testA.testA(blah, blah, blah)

Который не является фактическим использованием и потерпит неудачу, если вызывается в реальном скрипте

Есть ли у Сфинкса способ понять это? Или, если не лучший способ структурировать мой модуль, чтобы размер файла был небольшим, но при импорте избегать повторяющихся имен?

Спасибо за помощь

0 ответов

Другие вопросы по тегам