Python学习笔记(8):The ElementTree XML API——操作XML文件
常用函数
xml.etree.ElementTree.Comment(text=None)
该方法生成一个注释对象,注释内容是text。
xml.etree.ElementTree.dump(elem)
该方法将一个对象打印到标准输出。这个函数只用来调试(一般不把结果打印到标准输出)。
xml.etree.ElementTree.fromstring(text)
解析字符串text,生成一个Element实例。该方法等同于XML()。
xml.etree.ElementTree.fromstringlist(sequence, parser=None)
解析list,生成一个Element实例。
xml.etree.ElementTree.iselement(element)
判断element是否是一个合法的Element对象。
xml.etree.ElementTree.parse(source, parser=None)
解析文件内容,source是文件名,返回值是一个Element实例。
xml.etree.ElementTree.register_namespace(prefix, uri)
注册一个命名空间,prefix是命名空间前缀,uri是命名空间的uri。作用域为全局,注册后删除匹配到前缀或uri的元素。
xml.etree.ElementTree.SubElement(parent, tag, attrib={}, **extra)
创建子元素。parent是指定父元素,tag是子元素名称,attrib是元素属性(类型是dict)。
xml.etree.ElementTree.tostring(element, encoding=”us-ascii”, method=”xml”)
返回指定对象的字符串形式,其中method可以是”xml”、”html” 或 “text”
xml.etree.ElementTree.tostringlist(element, encoding=”us-ascii”, method=”xml”)
作用同tostring,返回结果为list,这里”“.join(tostringlist(element)) == tostring(element)
Element对象
属性
tag
用于标识元素的字符串
text、tail
text表示元素的开始标签和第一个子标签或结束标签或None之间的内容。tail表示元素的结束标签和下一个标签或None之间的内容。
例如
<a><b>1<c>2<d/>3</c></b>4</a>
上述代码中,a的text和tail都是None,b的text是1,tail是4,c的text是2,tail是None,d的text是None,tail是3。
attrib
元素的属性
函数
clear()
将Element对象重置,删除所有子元素,清空属性,text和tail都置为None。
get(key, default=None)
获取name为key的属性
append(subelement)
将subelement追加到指定元素的末尾
extend(subelements)
将subelements追加到指定元素,subelements是一个元素为element的list
find(match)
返回第一个匹配到match的子元素,match是tag名称或路径
findall(match)
返回所有匹配到match的子元素,match是tag名称或路径,返回结果是一个list
findtext(match, default=None)
返回第一个匹配到match的子元素的text,如果未匹配,返回default,如果匹配的元素没有text,则返回一个空字符串
insert(index, element)
在指定元素的指定位置插入一个子元素
iter(tag=None)
以当前元素为根元素,创建iterator,这个iterator可以遍历当前元素下的所有元素(深度优先),如果遍历过程中树结构变化,结果返回undefined
iterfind(match)
返回所有匹配到的子元素
itertext()
遍历当前元素及其全部子元素,返回text
remove(subelement)
删除子元素,该方法匹配元素对象,而不是tag
ElementTree对象
函数
_setroot(element)
替换根元素
find*(match)
find*(match)都等同与Element对象的同名方法
getroot()
获取根元素
write(file, encoding=”us-ascii”, xml_declaration=None, default_namespace=None, method=”xml”)
将ElementTree对象写入文件
Python学习笔记(8):The ElementTree XML API——操作XML文件相关推荐
- Python学习笔记:Day 9 编写API
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- 【Python学习笔记】简单调用百度API应用
#本文一切代码及理论均来自于郑秋生.夏敏捷二位老师主编<Python项目案例发 从入门到实践>一书,本人仅做微改.创作本文的目的仅为总结本人的学习过程和成果,借此巩固.可能存在许多疏漏之处 ...
- zkcli远程连接_ZooKeeper 学习笔记(二)-API 操作和应用
客户端 znode 可能含有数据,也可能没有.如果 znode 包含数据,那么数据存储为字节数组(byte array).字节数组的具体格式特定于每个应用的实现,ZooKeeper 不直接 提供解析支 ...
- python学习笔记之数据库表的读写操作
一.executemany()函数 建立数据库mariadb_learn,并且在userinfor表里面写入20个用户的账号和密码信息.代码如下 import pymysql #随机生成20条用户数据 ...
- Python学习笔记之爬取网页保存到本地文件
爬虫的操作步骤: 爬虫三步走 爬虫第一步:使用requests获得数据: (request库需要提前安装,通过pip方式,参考之前的博文) 1.导入requests 2.使用requests.get ...
- Python学习随笔:使用xlwings读取和操作Excel文件
一.背景 有2种模块可以对Execl文件,一种是xlwt 方式,需要安装三个库文件 xlrd(读Excel)xlwt(写Excel)xlutils(修改Excel),也是网上介绍文章最多的一种方法,一 ...
- Python学习随笔:使用xlwings读取和操作Excel文件的数字需要注意的问题
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在使用xlwings读取Excel文件中的数据时,所有的数字不论是整数.浮点数还是文本存放的数字,在 ...
- Python学习笔记:Day 10 用户注册和登陆
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- python学习笔记_week22
python学习笔记_week22 note 知识点概要- Session- CSRF- Model操作- Form验证(ModelForm)- 中间件- 缓存- 信号 内容详细: 1. Sessio ...
最新文章
- 计算机硬件市场调查清单,微型计算机组装与维护实用教程王际川第8章节组装计算机.ppt...
- MySQL协议包说明
- npm run dev 和 npx webpack-dev-server
- Centos7 开启网卡配置IP并连接xshell——转
- 通过__tablename__ = 'xxx' #定义表名
- 分布式光伏补贴_四川:2020年起工商业分布式光伏已无补贴
- AVB2 avbtool.py脚本常用命令
- [转] Android应用如何反馈Crash报告
- python3 开发面试题(面向对象)6.6
- java对象命名用变量_在Java语言中,所有的变量、常量、对象和类都是用【 】来命名的。...
- springmvc web.xml和application.xml配置详情(附:完整版pom.xml)
- .net网络编程(4)TcpListener、TcpClient
- 小知识点(复制过来的)
- java中的map是什么_Java中Map的使用
- 如何安装VMware Workstation虚拟机、及注意事项、安装所需的许可证码
- Nature呼吁:应对21世纪的大规模流行病,各个学科必须联合起来
- 监控视频压缩存储—视频实时压缩服务器
- 人人网android,人人网Android客户端:真实的在线社交圈
- 编译原理常用简称或英文原称(思维导图形式)
- 含泪整理最优质马壁纸素材,你想要的这里都有
热门文章
- 2022年ArchSummit全球架构师峰会杭州站感想
- 敏捷迭代管理 --每日站会
- 图片3D翻转效果 --摘自李硕老师博客160305
- 东软学院软件测试,软件测试技术与测试标准
- 关于联想y7000P电脑有线和无线网自动断掉且需要重启才可以连接的问题
- python qq群消息监控_python 监控微博用户更新+钉钉提醒
- H.264 原理与 B 站视频压制技巧
- unity请求json数据并解析
- 70后男人正处于角色的转型期,正是事业和家庭双丰收的黄金阶段,然而有许多事业有成的70后男人依旧选择单身。。。揭秘“70后”男人为啥不爱结婚
- CentOS安装unimrcp-1.7.0