python对XML文件的操作实现代码


Posted in Python onMarch 27, 2020

python对XML文件的操作

1、xml 创建

import xml.etree.ElementTree as ET

new_xml=ET.Element('personinfolist')  #最外面的标签名
personinfo=ET.SubElement(new_xml,'personinfo',attrib={'enrolled':'aaa'}) #对应的参数是:父级标签是谁,当前标签名,当前标签属性与值
name=ET.SubElement(personinfo,'name')
name.text='xaoming'
age=ET.SubElement(personinfo,'age',attrib={'checked':'yes'})
age.text='23'

personinfo2=ET.SubElement(new_xml,'personinfo',attrib={'enrolled':'bbb'})
name=ET.SubElement(personinfo2,'name')
name.text='xaokong'
age=ET.SubElement(personinfo2,'age',attrib={'checked':'no'})
age.text='20'

et=ET.ElementTree(new_xml)
et.write('text1.xml',encoding='utf-8',xml_declaration=True)#生成text1.xml

2、xml 数据查询

import xml.etree.ElementTree as ET
tree=ET.parse('text1.xml')
root=tree.getroot()
print(root.tag)
#遍历 xml 文档
for i in root:
  print(i.tag,i.attrib)  # tag是指标签名,attrib 是指标签里的属性,text 是指标签内容
  for j in i:
    print(j.tag,j.attrib,j.text)
    for k in j:
      print(k.tag,k.attrib,k.text)
#只遍历 year 标签
for w in root.iter('year'): #只遍历指定标签
  print(w.tag,w.text)

3、xml 数据修改

import xml.etree.ElementTree as ET
tree=ET.parse('text1.xml')
root=tree.getroot()
print(root.tag)
#修改 xml
for node in root.iter('year'): #要修改的标签
  new_year=int(node.text)+1
  node.text=str(new_year)
  node.set('updsted_by','kong') #给这个标签(year)添加新的属性 key:value
tree.write('text1.xml')   #再吧数据写回去

4、xml 数据删除

import xml.etree.ElementTree as ET
tree=ET.parse('text1.xml')
root=tree.getroot()
for country in root.findall('country'):  #会取这个标签所有的数据
  rank=int(country.find('rank').text)
  if rank > 50:
    root.remove(country)  #删除数据
tree.write('output.xml') #再把数据写回文件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
Mar 06 Python
利用python画一颗心的方法示例
Jan 31 Python
Python 中pandas.read_excel详细介绍
Jun 23 Python
Python正则捕获操作示例
Aug 19 Python
Django 登陆验证码和中间件的实现
Aug 17 Python
详解django+django-celery+celery的整合实战
Mar 19 Python
对Python获取屏幕截图的4种方法详解
Aug 27 Python
详解Anconda环境下载python包的教程(图形界面+命令行+pycharm安装)
Nov 11 Python
python中Ansible模块的Playbook的具体使用
May 28 Python
使用Keras中的ImageDataGenerator进行批次读图方式
Jun 17 Python
Python爬虫UA伪装爬取的实例讲解
Feb 19 Python
Python测试框架pytest高阶用法全面详解
Jun 01 Python
Python Socketserver实现FTP文件上传下载代码实例
Mar 27 #Python
使用python从三个角度解决josephus问题的方法
Mar 27 #Python
解决django接口无法通过ip进行访问的问题
Mar 27 #Python
Django 实现将图片转为Base64,然后使用json传输
Mar 27 #Python
python实现简单坦克大战
Mar 27 #Python
Django实现从数据库中获取到的数据转换为dict
Mar 27 #Python
Python生成器实现简单"生产者消费者"模型代码实例
Mar 27 #Python
You might like
PHP的explode和implode的使用说明
2011/07/17 PHP
smarty模板中拼接字符串的方法
2014/02/14 PHP
php实现文章置顶功能的方法
2016/10/20 PHP
jQuery之自动完成组件的深入解析
2013/06/19 Javascript
jquery 层次选择器siblings与nextAll的区别介绍
2013/08/02 Javascript
基于Bootstrap+jQuery.validate实现Form表单验证
2014/12/16 Javascript
javascript中callee与caller的区别分析
2015/04/20 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
nodejs加密Crypto的实例代码
2016/07/07 NodeJs
详解webpack异步加载业务模块
2017/06/23 Javascript
浅谈事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流
2017/07/22 jQuery
zTree jQuery 树插件的使用(实例讲解)
2017/09/25 jQuery
浅析node应用的timing-attack安全漏洞
2018/02/28 Javascript
json字符串传到前台input的方法
2018/08/06 Javascript
在React项目中使用Eslint代码检查工具及常见问题
2018/10/10 Javascript
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
前端面试知识点目录一览
2019/04/15 Javascript
javascript实现移动端触屏拖拽功能
2020/07/29 Javascript
Python中文编码那些事
2014/06/25 Python
通过Python实现自动填写调查问卷
2017/09/06 Python
python邮件发送smtplib使用详解
2020/06/16 Python
详谈Python 窗体(tkinter)表格数据(Treeview)
2018/10/11 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
CSS3 优势以及网页设计师如何使用CSS3技术
2009/07/29 HTML / CSS
浏览器实现移动端高性能css3动画(开启gpu加速)
2013/12/23 HTML / CSS
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
W Concept美国:精选全球独立设计师
2017/02/22 全球购物
Charlotte Tilbury英国官网:英国彩妆品牌
2017/05/26 全球购物
Linux中如何设置Java环境变量(Ubuntu)
2016/07/24 面试题
专科毕业生就业推荐信
2013/11/01 职场文书
《山谷中的谜底》教学反思
2014/04/26 职场文书
幼儿园健康教育方案
2014/06/14 职场文书
六查六看自检自查剖析材料
2014/10/14 职场文书
2015年售票员工作总结
2015/04/29 职场文书
Redis实现订单过期删除的方法步骤
2022/06/05 Redis