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 相关文章推荐
在Linux下使用Python的matplotlib绘制数据图的教程
Jun 11 Python
Windows下实现Python2和Python3两个版共存的方法
Jun 12 Python
python 创建弹出式菜单的实现代码
Jul 11 Python
python字符串的方法与操作大全
Jan 30 Python
Python统计单词出现的次数
Apr 04 Python
django 多数据库配置教程
May 30 Python
Python socket套接字实现C/S模式远程命令执行功能案例
Jul 06 Python
Python实现的排列组合、破解密码算法示例
Apr 12 Python
Pytorch 实现自定义参数层的例子
Aug 17 Python
python函数声明和调用定义及原理详解
Dec 02 Python
python如何运行js语句
Sep 09 Python
python 用opencv实现霍夫线变换
Nov 27 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
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
php 方便水印和缩略图的图形类
2009/05/21 PHP
php 执行系统命令的方法
2009/07/07 PHP
php empty函数 使用说明
2009/08/10 PHP
PHP中常用的转义函数
2014/02/28 PHP
thinkphp实现面包屑导航(当前位置)例子分享
2014/05/10 PHP
你必须知道的Javascript知识点之"单线程事件驱动"的使用
2013/04/23 Javascript
用js控制组织结构图可以任意拖拽到指定位置
2014/01/17 Javascript
php is_numberic函数造成的SQL注入漏洞
2014/03/10 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
2014/06/24 Javascript
理解jQuery stop()方法
2014/11/21 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
js动态获取时间的方法分析
2019/08/02 Javascript
vue实现百度语音合成的实例讲解
2019/10/14 Javascript
vue3为什么要用proxy替代defineProperty
2020/10/19 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
2020/11/05 Javascript
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
Python函数可变参数定义及其参数传递方式实例详解
2015/05/25 Python
python实现的文件同步服务器实例
2015/06/02 Python
python图书管理系统
2020/04/05 Python
ubuntu系统下使用pm2设置nodejs开机自启动的方法
2018/05/12 NodeJs
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
python中时间模块的基本使用教程
2019/05/14 Python
python二维码操作:对QRCode和MyQR入门详解
2019/06/24 Python
Python2比较当前图片跟图库哪个图片相似的方法示例
2019/09/28 Python
Django+boostrap 美化admin后台的操作
2020/03/11 Python
详解用Python进行时间序列预测的7种方法
2020/03/13 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Python colormap库的安装和使用详情
2020/10/06 Python
加拿大最大的五金、家居装修和园艺产品商店:RONA
2017/01/27 全球购物
新西兰最大的在线设计师眼镜店:SmartBuyGlasses新西兰
2017/10/20 全球购物
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
工程开工庆典邀请函
2014/02/01 职场文书
师范生自荐信模板
2014/05/28 职场文书
2019年思想汇报
2019/06/20 职场文书
MongoDB使用profile分析慢查询的步骤
2021/04/30 MongoDB