Comparing two minidom objects
Diez B. Roggisch
deetsNOSPAM at web.de
Mon Nov 8 14:29:02 EST 2004
Skip Montanaro wrote:
> I'd like to compare two xml.dom.minidom objects, but the naive attempt
> fails:
>
>>>> import xml.dom.minidom
>>>> d1 = xml.dom.minidom.parse("ES.xml")
>>>> d2 = xml.dom.minidom.parse("ES.xml")
>>>> d1 == d2
> False
You want some recursive comparision that defines equality in terms of node
and children. Something like this:
def tree_eq(a, b):
if a.nodeName == b.nodeName and len(a.childNodes) == len(b.childNodes):
res = True
for ac, bc in zip(a.childNodes, b.childNodes):
res = res and tree_eq(ac, bc)
if not res:
return False
return res
return False
The nodeName is just one property you can check for equality - maybe you
want to additionally compare nodeType and nodeValue.
--
Regards,
Diez B. Roggisch
More information about the Python-list
mailing list