最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
python标准库ElementTree处理xml代码示例
时间:2022-06-25 01:12:38 编辑:袖梨 来源:一聚教程网
本篇文章小编给大家分享一下python标准库ElementTree处理xml代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
1. 示例用法
参照官方文档,创建country_data.xml测试文档,内容如下:
1 2008 141100 4 2011 59900 68 2011 13600
使用如下代码,将数据读出,打印
from xml.etree.ElementTree data = ElementTree.ElementTree(file='country_data.xml') country_list = data.findall('country') #找到所有名为‘country'的tag,返回一个Element对象列表。 for country in country_list: name = country.attrib.get('name', '') print name, ' ', for item in country: if item.tag == 'neighbor': name = item.attrib.get('name', '') direction = item.attrib.get('direction', '') print '{0} ({1})'.format(name, direction), ' ', else: print item.text, ' ', print ''
其中
data = ElementTree.ElementTree(file='country_data.xml')
获得一个ElementTree对象,也可以使用
tree = ElementTree.parse('country_data.xml')
Element对象具有如下属性和操作
elem[n] 返回elem的第n个子元素
elem[n] = new_elem 将elem的第n个子元素更改为不同的元素new_elem
del elem[n] 删除子元素
len(elem) 子元素的数量
elem.find(path)
elem.getchildren() 按文档顺序返回所有子元素
elem.items()将所有元素的属性值以(name, value)对列表形式返回
遇到非法格式的xml
ExpatError: no element found
bad.xml为空文档时,内容如下:
执行如下python代码,遇到xml.parser.expat.ExpatError异常:
import xml.etree.ElementTree as ET ET.parse('bad.xml')
xml.parsers.expat.ExpatError: no element found: line 3, column 0
ExpatError: mismatched tag
bad.xml中找不到对应结束标记符时,内容如下:
因为区分大小写,所以 不能作为
xml.parsers.expat.ExpatError: mismatched tag: line 3, column 2
ExpatError: not well-formed(invalid token)
bad.xml中属性值未包含在双引号(")之中时,遇到如下异常:
bad.xml中非法符号,在"if salary < 1000 then"语句的‘<',如下:
if salary < 1000 then xml.parsers.expat.ExpatError: not well-formed (invalid token): line 2, column 9
相关文章
- 《无限暖暖》天星之羽获得位置介绍 12-20
- 《流放之路2》重铸台解锁方法介绍 12-20
- 《无限暖暖》瞄准那个亮亮的成就怎么做 12-20
- 《无限暖暖》魔气怪终结者完成方法 12-20
- 《无限暖暖》曙光毛团获得位置介绍 12-20
- 《无限暖暖》日光果获得位置介绍 12-20