атрибуты автокласса и экземпляра

Согласно документации sphinx, .. autoattributeдиректива должна иметь возможность документировать атрибуты экземпляра. Однако, если я это сделаю::

.. currentmodule:: xml.etree.ElementTree

.. autoclass:: ElementTree

   .. autoattribute:: ElementTree._root

Затем при сборке я получаю AttributeError:

Traceback (most recent call last):etree.ElementTree.ElementTree                 
  File "/Volumes/Raptor/Library/Python/2.7/lib/python/site-packages/sphinx/ext/autodoc.py", line 326, in import_object
    obj = self.get_attr(obj, part)
  File "/Volumes/Raptor/Library/Python/2.7/lib/python/site-packages/sphinx/ext/autodoc.py", line 232, in get_attr
    return safe_getattr(obj, name, *defargs)
  File "/Volumes/Raptor/Library/Python/2.7/lib/python/site-packages/sphinx/util/inspect.py", line 70, in safe_getattr
    raise AttributeError(name)
AttributeError: _root

, даже если я создаю экземпляр ElementTreeи пытаюсь получить доступ к атрибуту _root, он работает нормально ::

>>> from xml.etree.ElementTree import ElementTree
>>> e = ElementTree()
>>> hasattr(e, '_root')
True

Что я делаю не так?

(На самом деле у меня возникла эта проблема с одним из моих собственных классов, но я просто использую класс ElementTree в качестве примера, так как он находится в стандартной библиотеке)

6
задан jterrace 26 June 2012 в 16:18
поделиться