常用函数

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文件相关推荐

  1. Python学习笔记:Day 9 编写API

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  2. 【Python学习笔记】简单调用百度API应用

    #本文一切代码及理论均来自于郑秋生.夏敏捷二位老师主编<Python项目案例发 从入门到实践>一书,本人仅做微改.创作本文的目的仅为总结本人的学习过程和成果,借此巩固.可能存在许多疏漏之处 ...

  3. zkcli远程连接_ZooKeeper 学习笔记(二)-API 操作和应用

    客户端 znode 可能含有数据,也可能没有.如果 znode 包含数据,那么数据存储为字节数组(byte array).字节数组的具体格式特定于每个应用的实现,ZooKeeper 不直接 提供解析支 ...

  4. python学习笔记之数据库表的读写操作

    一.executemany()函数 建立数据库mariadb_learn,并且在userinfor表里面写入20个用户的账号和密码信息.代码如下 import pymysql #随机生成20条用户数据 ...

  5. Python学习笔记之爬取网页保存到本地文件

     爬虫的操作步骤: 爬虫三步走 爬虫第一步:使用requests获得数据: (request库需要提前安装,通过pip方式,参考之前的博文) 1.导入requests 2.使用requests.get ...

  6. Python学习随笔:使用xlwings读取和操作Excel文件

    一.背景 有2种模块可以对Execl文件,一种是xlwt 方式,需要安装三个库文件 xlrd(读Excel)xlwt(写Excel)xlutils(修改Excel),也是网上介绍文章最多的一种方法,一 ...

  7. Python学习随笔:使用xlwings读取和操作Excel文件的数字需要注意的问题

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在使用xlwings读取Excel文件中的数据时,所有的数字不论是整数.浮点数还是文本存放的数字,在 ...

  8. Python学习笔记:Day 10 用户注册和登陆

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  9. python学习笔记_week22

    python学习笔记_week22 note 知识点概要- Session- CSRF- Model操作- Form验证(ModelForm)- 中间件- 缓存- 信号 内容详细: 1. Sessio ...

最新文章

  1. 计算机硬件市场调查清单,微型计算机组装与维护实用教程王际川第8章节组装计算机.ppt...
  2. MySQL协议包说明
  3. npm run dev 和 npx webpack-dev-server
  4. Centos7 开启网卡配置IP并连接xshell——转
  5. 通过__tablename__ = 'xxx' #定义表名
  6. 分布式光伏补贴_四川:2020年起工商业分布式光伏已无补贴
  7. AVB2 avbtool.py脚本常用命令
  8. [转] Android应用如何反馈Crash报告
  9. python3 开发面试题(面向对象)6.6
  10. java对象命名用变量_在Java语言中,所有的变量、常量、对象和类都是用【 】来命名的。...
  11. springmvc web.xml和application.xml配置详情(附:完整版pom.xml)
  12. .net网络编程(4)TcpListener、TcpClient
  13. 小知识点(复制过来的)
  14. java中的map是什么_Java中Map的使用
  15. 如何安装VMware Workstation虚拟机、及注意事项、安装所需的许可证码
  16. Nature呼吁:应对21世纪的大规模流行病,各个学科必须联合起来
  17. 监控视频压缩存储—视频实时压缩服务器
  18. 人人网android,人人网Android客户端:真实的在线社交圈
  19. 编译原理常用简称或英文原称(思维导图形式)
  20. 含泪整理最优质马壁纸素材,你想要的这里都有

热门文章

  1. 2022年ArchSummit全球架构师峰会杭州站感想
  2. 敏捷迭代管理 --每日站会
  3. 图片3D翻转效果 --摘自李硕老师博客160305
  4. 东软学院软件测试,软件测试技术与测试标准
  5. 关于联想y7000P电脑有线和无线网自动断掉且需要重启才可以连接的问题
  6. python qq群消息监控_python 监控微博用户更新+钉钉提醒
  7. H.264 原理与 B 站视频压制技巧
  8. unity请求json数据并解析
  9. 70后男人正处于角色的转型期,正是事业和家庭双丰收的黄金阶段,然而有许多事业有成的70后男人依旧选择单身。。。揭秘“70后”男人为啥不爱结婚
  10. CentOS安装unimrcp-1.7.0