output = []
def write_tree(node):
output.append("</node>")
sum = 0
for child in reversed(node.children):
if child.type = leaf:
output.extend(["</leaf>", "%d" % node.value, "<leaf>"])
sum += node.value
else:
sum += write_tree(node)
output.append("<node sum=%d>" % sum)
return sumwrite_tree(rootNode) output.reverse() print output :) (There is probably a cleaner way to do this than the quick hack above.) -- Ben Sizer -- http://mail.python.org/mailman/listinfo/python-list
