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 相关文章推荐
wxPython框架类和面板类的使用实例
Sep 28 Python
python文件操作之目录遍历实例分析
May 20 Python
Python多线程实现同步的四种方式
May 02 Python
Python命名空间的本质和加载顺序
Dec 17 Python
python读取txt文件中特定位置字符的方法
Dec 24 Python
梅尔频率倒谱系数(mfcc)及Python实现
Jun 18 Python
pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
Jan 02 Python
解决tensorflow训练时内存持续增加并占满的问题
Jan 19 Python
python让函数不返回结果的方法
Jun 22 Python
用Python监控你的朋友都在浏览哪些网站?
May 27 Python
Flask response响应的具体使用
Jul 15 Python
基于Python编写简易版的天天跑酷游戏的示例代码
Mar 23 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 PDO中文乱码解决办法
2009/07/20 PHP
PHP 图片水印类代码
2012/08/27 PHP
PHP正则提取不包含指定网址的图片地址的例子
2014/04/21 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
2014/05/15 PHP
php实现使用正则将文本中的网址转换成链接标签
2014/12/03 PHP
前端必学之PHP语法基础
2016/01/01 PHP
php打乱数组二维数组多维数组的简单实例
2016/06/17 PHP
js玩一玩WSH吧
2007/02/23 Javascript
文本链接逐个出现的js脚本
2007/12/12 Javascript
犀利的js 函数集合
2009/06/11 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
2014/02/19 Javascript
什么是Node.js?Node.js详细介绍
2014/06/01 Javascript
使用HTML+CSS+JS制作简单的网页菜单界面
2015/07/27 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
JavaScript从0开始构思表情插件
2016/07/26 Javascript
jQuery获取与设置iframe高度的方法
2016/08/01 Javascript
微信小程序 地图定位简单实例
2016/10/14 Javascript
javascript 中模板方法单例的实现方法
2017/10/17 Javascript
javascript高级模块化require.js的具体使用方法
2017/10/31 Javascript
AngularJs中$cookies简单用法分析
2019/05/30 Javascript
Vue中遍历数组的新方法实例详解
2019/07/21 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
python两种遍历字典(dict)的方法比较
2014/05/29 Python
利用Python命令行传递实例化对象的方法
2016/11/02 Python
PyCharm代码整体缩进,反向缩进的方法
2018/06/25 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
2019/06/24 Python
python GUI库图形界面开发之PyQt5下拉列表框控件QComboBox详细使用方法与实例
2020/02/27 Python
Python如何存储数据到json文件
2020/03/09 Python
在Keras中CNN联合LSTM进行分类实例
2020/06/29 Python
启动一个线程是用run()还是start()
2016/12/25 面试题
鲜果饮品店创业计划书
2014/01/21 职场文书
劳动工资科岗位职责范本
2014/03/02 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
新婚姻法离婚协议书范文
2014/11/30 职场文书
Golang之sync.Pool使用详解
2021/05/06 Golang