python xml解析
first.xml
<info> <person > <id>1</id> <name>fsy</name> <age >24</age> </person> <person> <id>2</id> <name>jianjian</name> <age>24</age> </person> <count id ='1'>1000</count> </info>
from xml.etree import ElementTree as etree
def read_xml(file): # parse()函数会返回一个能代表整篇文档的对象。这不是根元素。要获得根元素的引用可以调用getroot()方法。 tree = etree.parse(file) root = tree.getroot() return root
find查找失敗:
使用find要注意在布林上下文中,如果ElementTree元素物件不包含子元素,其值則會被認為是False(即如果len(element)等於0)。這就意味著if element.find('...')並非在測試是否find()方法找到了匹配項;這條語句是在測試匹配到的元素是否包含子元素。想要測試find()方法是否回傳了一個元素,則需使用if element.find('...') is not None。
def print_node(node): '''''打印结点基本信息''' print("node.tag:%s" % node.tag) print("node.attrib:%s"%node.attrib) print( "node.text:%s" % node.text)