python ElementTree 基本读操作示例


Posted in Python onApril 09, 2009

示例可以附件中下载
1.加载xml文件
加载XML文件共有2种方法,一是加载指定字符串,二是加载指定文件
2.获取element的方法
a) 通过getiterator
b) 过 getchildren
c) find方法
d) findall方法
示例如下:

#-*- coding:utf-8 -*- 
from xml.etree import ElementTree 
def print_node(node): 
'''''打印结点基本信息''' 
print "==============================================" 
print "node.attrib:%s" % node.attrib 
if node.attrib.has_key("age") > 0 : 
print "node.attrib['age']:%s" % node.attrib['age'] 
print "node.tag:%s" % node.tag 
print "node.text:%s" % node.text 
def read_xml(text): 
'''''读xml文件''' 
# 加载XML文件(2种方法,一是加载指定字符串,二是加载指定文件) 
# root = ElementTree.parse(r"D:\test.xml") 
root = ElementTree.fromstring(text) # 获取element的方法 
# 1 通过getiterator 
lst_node = root.getiterator("person") 
for node in lst_node: 
print_node(node) 
# 2通过 getchildren 
lst_node_child = lst_node[0].getchildren()[0] 
print_node(lst_node_child) 
# 3 .find方法 
node_find = root.find('person') 
print_node(node_find) 
#4. findall方法 
node_findall = root.findall("person/name")[1] 
print_node(node_findall) 
if __name__ == '__main__': 
# read_xml(open("test.xml").read()) 
write_xml(open("test.xml").read())
Python 相关文章推荐
Python3中的列表,元组,字典,字符串相关知识小结
Nov 10 Python
Python使用Scrapy保存控制台信息到文本解析
Dec 27 Python
Python实现读取Properties配置文件的方法
Mar 29 Python
Python sklearn KFold 生成交叉验证数据集的方法
Dec 11 Python
python实现全盘扫描搜索功能的方法
Feb 14 Python
Python+opencv 实现图片文字的分割的方法示例
Jul 04 Python
关于numpy数组轴的使用详解
Dec 05 Python
Pytorch 使用不同版本的cuda的方法步骤
Apr 02 Python
Python中如何引入第三方模块
May 27 Python
python中的测试框架
Nov 13 Python
python UIAutomator2使用超详细教程
Feb 19 Python
Python图片检索之以图搜图
May 31 Python
python 获取et和excel的版本号
Apr 09 #Python
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
Apr 09 #Python
python 获取文件列表(或是目录例表)
Mar 25 #Python
Python字符串的encode与decode研究心得乱码问题解决方法
Mar 23 #Python
python 判断自定义对象类型
Mar 21 #Python
python mysqldb连接数据库
Mar 16 #Python
wxpython 学习笔记 第一天
Mar 16 #Python
You might like
php socket实现的聊天室代码分享
2014/08/16 PHP
php封装的图片(缩略图)处理类完整实例
2016/10/19 PHP
php从身份证获取性别和出生年月
2017/02/09 PHP
laravel框架模板之公共模板、继承、包含实现方法分析
2019/08/30 PHP
javascript hashtable 修正版 下载
2010/12/30 Javascript
js特效,页面下雪的小例子
2013/06/17 Javascript
jquery.messager.js插件导致页面抖动的解决方法
2013/07/14 Javascript
使用nodejs、Python写的一个简易HTTP静态文件服务器
2014/07/18 NodeJs
node.js中的console.error方法使用说明
2014/12/10 Javascript
利用jQuery及AJAX技术定时更新GridView的某一列数据
2015/12/04 Javascript
文本框只能输入数字的实现方法(兼容IE火狐)
2016/06/25 Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
2016/12/18 Javascript
详解浏览器渲染页面过程
2017/02/09 Javascript
async/await与promise(nodejs中的异步操作问题)
2017/03/03 NodeJs
Bootstrap表单制作代码
2017/03/17 Javascript
js get和post请求实现代码解析
2020/02/06 Javascript
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
操作Windows注册表的简单的Python程序制作教程
2015/04/07 Python
python自动zip压缩目录的方法
2015/06/28 Python
pycharm: 恢复(reset) 误删文件的方法
2018/10/22 Python
解决pycharm工程启动卡住没反应的问题
2019/01/19 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
关于tf.TFRecordReader()函数的用法解析
2020/02/17 Python
pycharm 的Structure界面设置操作
2021/02/05 Python
独特的礼品和创新的科技产品:The Grommet
2018/02/24 全球购物
洛杉矶健身中心女性专用运动服饰品牌:Marika
2018/05/09 全球购物
GAZMAN官网:澳大利亚领先的男装品牌
2019/12/19 全球购物
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
初中生操行评语大全
2014/04/24 职场文书
2015学习委员工作总结范文
2015/04/03 职场文书
李强为自己工作观后感
2015/06/11 职场文书
大学生暑假实习总结
2015/07/13 职场文书
MySQL约束超详解
2021/09/04 MySQL
SpringCloud Feign请求头删除修改的操作代码
2022/03/20 Java/Android
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js