Можно ли использовать sphinx .. automodule:: и другие автоматические функции для документирования модулей, содержащих операторы from x import *
, без включения всей документации из импортированных модулей?
РЕДАКТИРОВАТЬ: Согласно точке зрения mzjn, если атрибут __module__
импортированных методов не совпадает с именем модуля, они не должны быть задокументированы. Однако для некоторых моих модулей они есть.
мой MLE - это просто файл test_doc.py
со следующей строкой:
from pylab import *
и документация:
.. automodule:: agpy.test_doc
:members:
Если я включу эту строку в test_doc.py
:
print "beta.__module__:",beta.__module__
Я получаю ожидаемый результат:
beta.__module__: None
Есть идеи, что происходит? Мог ли я что-то напортачить в conf.py
?
РЕДАКТИРОВАТЬ: Обходной путь, согласно ответу mzjn, для изменения атрибута __module__
тех функций, у которых есть __module__==None
:
import pylab
from pylab import *
for k,v in pylab.__dict__.iteritems():
if hasattr(v,'__module__'):
if v.__module__ is None:
locals()[k].__module__ = 'pylab'
pylab
по алфавиту - person keflavich   schedule 26.12.2011