Subclassing cElementTree.Element
Fredrik Lundh
fredrik at pythonware.com
Tue Feb 8 03:50:11 EST 2005
Kent Johnson wrote:
> Is it possible to subclass cElementTree.Element? I tried
> >>> import cElementTree as et
> >>> class Elt(et.Element):
> ... pass
> ...
> Traceback (most recent call last):
> File "<stdin>", line 1, in ?
> TypeError: Error when calling the metaclass bases
> cannot create 'builtin_function_or_method' instances
Nope.
This is by design; Elements are intended to be contained, not subclassed. (you
cannot subclass ElementTree Elements either; Element is a factory function, not
a class).
To solve the navigation issue, you could either use a dictionary that keeps track
of child-parent relations, or use a proxy wrapper. Or see if you can structure your
code so you always work from parents (that's usually easier than you may think).
</F>
More information about the Python-list
mailing list