学习笔记-模块之xml文件处理
处理XML文档
遍历xml文档
1 #遍历xml文档的子标签 2 for child in root: 3 print(child.tag,child.attrib) 4 #子标签名 属性 5 for i in child: 6 print(i.tag,i.text) 7 #子标签名 属性 8 #字节数标签不能遍历出属性,输出为空 9 #改进 10 print(i.tag,i.text,i.attrib) 11 12 #遍历自己需要的 例如只遍历'year'节点 13 for node in root.iter('year'): 14 print(node.tag,node.text)
修改
1 import xml.etree.ElementTree as ET 2 3 tree=ET.parse('xml_test.xml') 4 root=tree.getroot() 5 6 for node in root.iter('year'): 7 new_year=int(node.text)+1 8 node.text=str(new_year) 9 #赋值 10 node.set('updated','yes') 11 给year标签增加属性 12 13 tree.write('xml_test.xml')
删除node
1 tree=ET.parse('xml_test.xml') 2 root=tree.getroot() 3 4 for country in root.findall('country'): #遍历country 5 rank = int(country.find('rank').text) #找出rank 6 if rank > 50: 7 root.remove(country) 8 9 tree.write('output.xml') #写入文件为output.xml文件中
新建xml文件
1 import xml.etree.ElementTree as ET 2 3 new_xml = ET.Element("personinfolist") #创建根节点 4 personinfo = ET.SubElement(new_xml, "personinfo", attrib={"enrolled": "yes"}) 5 #是new_xml的子节点 6 name = ET.SubElement(personinfo, "name") 7 name.text='Jeck' 8 age = ET.SubElement(personinfo, "age", attrib={"checked": "no"}) 9 #是personnifo的子节点 10 sex = ET.SubElement(personinfo, "sex") 11 sex.text='Men' 12 age.text = '33' #给age节点赋值 13 personinfo2 = ET.SubElement(new_xml, "personinfo", attrib={"enrolled": "no"}) 14 name = ET.SubElement(personinfo2, "name") 15 name.text='Ailice' 16 age = ET.SubElement(personinfo2, "age") 17 age.text = '19' 18 19 et = ET.ElementTree(new_xml) # 生成文档对象 20 et.write("test.xml", encoding="utf-8", xml_declaration=True) 21 #写入到test.xml文件中 声明是xml格式的 22 23 ET.dump(new_xml) # 打印生成的格式
转载于:https://www.cnblogs.com/zhong2018/p/8974185.html
学习笔记-模块之xml文件处理相关推荐
- Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)
Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...
- Android学习笔记之AndroidManifest.xml文件解析(学习别人的..非原创)
AndroidManifest.xml是每个android程序中必须的文件.它位于application的根目录,描述了package中的全局数据,包括了package中暴露的组件(activitie ...
- Android学习笔记之AndroidManifest.xml文件解析
为什么80%的码农都做不了架构师?>>> 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它位于整 ...
- Android学习笔记43:XML文件解析(Pull方式)
解析XML文档的方法是很多的,除了常用的SAX和DOM方法以外,还可以使用Java自带的Pull来解析XML文档. 1.使用Pull解析器解析XML文档 Pull解析器的运行方式和SAX解析器很相似, ...
- [python教程入门学习]python学习笔记(CMD执行文件并传入参数)
本文章向大家介绍python学习笔记(CMD执行文件并传入参数),主要包括python学习笔记(CMD执行文件并传入参数)使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋 ...
- Unix原理与应用学习笔记----第六章 文件的基本属性2
Unix原理与应用学习笔记----第六章 文件的基本属性2 改变文件权限命令:chmod 提示:文件或目录创建后,就被赋予一组默认的权限.所有的用户都有读,只有文件的所有者才有写. 相对权限设置 Ch ...
- oracle的脚本日志,学习笔记:Oracle alert日志文件巡检脚本
天萃荷净 分享一篇Oracle alert日志文件巡检脚本 每天都检查oracle日志,所以写了一个比较完善的shell,让其自动处理,在运行程序之前,需要在该脚本目录下新建tmp目录 #!/usr/ ...
- Linux学习笔记(二)——文件与磁盘系统
Linux学习笔记(二)--文件与磁盘系统 文件操作 ls [选项][目录名]-l :列出长数据串,包含文件的属性与权限数据等-a :列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来(常用)- ...
- node学习笔记--模块加载
学习笔记过程,自己理解,方便自己查询,新手一枚,希望批评指正. 使用 webstrom 编辑器 可以将安装的node.exe 配置进去,直接运行,可自行百度配置. 通过命令行参数传递给NodeJS以启 ...
- SilverLight学习笔记--关于Silverlight资源文件(如:图片)的放置位置及其引用
Silverlight中有许多资源文件,例如:图片,音频.视频,甚至XML和XAML等非执行数据文件,在Silverlight中根据资源所处位置的不同而有所区别. 资源文件可分布在我们Silve ...
最新文章
- AI研习丨专题:可解释推荐的强化学习框架
- 车间AP无法接入故障分析处理
- swift 数组高阶使用(一)
- rsync文件同步(linux-linux)
- 初始Bootstrap
- 重磅!微软发布新一代 Teams 开发工具 —— Teams Toolkit!不止VS Code extension!
- 《自然》年度十大人物:天才曹原居首 贺建奎来去匆匆
- jq之省市区级联插件
- C#中全角转半角以及半角转全角
- 设计师交流平台!!!
- VB 几种打开文本文件速度对比
- (5)【整合】基于机器学习的酒店评论文本倾向性分析
- Docker 全套笔记整理
- Charlotte:不会被检测到的Shellcode启动器
- Java数据脱敏框架
- 封装解决WebView的那些坑
- 【面试分享】奇安信渗透测试工程师,通过!
- PHP的时间增加10分钟和加一天的时间
- 谷歌浏览器插件 - 为 Microsoft Bing 搜索引擎首页添加一个【保存背景图片】的按钮(版本 2)
- java 麻将胡牌算法_麻将胡牌算法研究
热门文章
- ECMAScript 学习笔记02
- linux操作实例,linux下的一些文档操作实例 | Soo Smart!
- python sorted函数
- Mask rcnn介绍
- caffe/build/tools下会生成一些工具
- caffe目录结构 及 caffe源码文件说明
- Caffe学习:Blobs, Layers, and Nets
- Java注解之自定义注解
- c语言串口控制单片机,利用USART实现单片机与串口通信[C语言]
- python浮点数转科学计数_python – 将float转换为字符串没有科学记数法和假精度...