[EMAIL PROTECTED] a écrit : > On Nov 5, 9:40 am, Paul McGuire <[EMAIL PROTECTED]> wrote: > >>On Nov 5, 11:32 am, [EMAIL PROTECTED] wrote: >> >> >>>suppose i want to >>>make foo.childNodes[bar] available as foo[bar] >>>(while still providing access to the printxml/printprettyxml() >>>functions >>>and other functionality of dom/minidom instance). >> >>>What is a good way to accomplish that? >> >>define __getitem__(self, index) method on foo's class, and have the >>method return foo.childNodes[index]. >> >>If you don't have access to foo's class, then just do this: >> >>foo.__getitem__ = delegatingGetItemMethod >> >>and define delegatingGetItemMethod as described above. >> > > could i plug it into the (exiting) xml.dom.minidom class rather than > the instance?
from xml.dom import minidom minidom.Node.__getitem__ = lambda self, index: self.childNodes[index] doc = minidom.parseString("<foo><bar/></foo>") doc[0] => <DOM Element: foo at 0x407c322c> But ElementTree might be a better choice still... -- http://mail.python.org/mailman/listinfo/python-list