您可以像这样访问属性值:from elementtree.ElementTree import XML, SubElement, Element, tostring
text = """
"""
elem = XML(text)
for node in elem.find('phoneNumbers'):
print node.attrib['topic']
# Create sub elements
if node.attrib['topic']=="sys/phoneNumber/1":
tag = SubElement(node,'TagName')
tag.attrib['attr'] = 'AttribValue'
print tostring(elem)
忘了说,如果你的ElementTree版本大于1.3,你可以使用XPath:elem.find('.//number[@topic="sys/phoneNumber/1"]')
或者您可以使用这个简单的:for node in elem.findall('.//number'):
if node.attrib['topic']=="sys/phoneNumber/1":
tag = SubElement(node,'TagName')
tag.attrib['attr'] = 'AttribValue'