William Purcell wrote:
Scott David Daniels wrote:
William Purcell wrote:
I am writing a application to calculate pressure drop for a piping
network. Namely a building sprinkler system. This will be a
command line program at first with the system described in xml....
If you are going to be doing a lot of tree walking, try etree.
Simple example:
import xml.etree.ElementTree as ET # or wherever you get ElementTree
def find_remote_and_path(node, path):
for child in node:
for result in walks(child, path + [node]): yield result
if node.tag == 'node' and node.get('hydraulically_most_remote'
) == 'True':
yield node, path
tree = ET.parse('ex.xml')
for node, path in find_remote_and_path(tree.getroot(), []):
for t in path:
print ' ', t.tag, t.get('id', '-')
print node.tag, ', '.join(sorted('%s=%r' % pair
for pair in node.items()))
--Scott David Daniels
scott.dani...@acm.org
Scott, Thanks for the reply.
I am having a little trouble finding where to import `walks` from.
Bill
Sorry, renamed and forgot to repaste.
walks is just find_remote_and_path
--
http://mail.python.org/mailman/listinfo/python-list