python中xml模块_Python中模块之xml的讲解

xml模块的功能介绍

这里主要讲解xml模块下的etree.ElementTree类。

1. 创建

具体代码如下

import xml.etree.ElementTree as XM

namelist1 = XM.Element("namelist1")#创建标签

name1 = XM.SubElement(namelist1,"name",attrib={"enrolled":"yes"})#创建子标签

age1 = XM.SubElement(name1,"age",attrib={"checked":"33"})#创建下一级子标签

sex1 = XM.SubElement(name1,"sex",)#创建最后一级子标签

sex1.text = 'man'#对最后一级子标签添加text属性

name2 = XM.SubElement(namelist1,"name",attrib={"enrolled":"no"})

age2 = XM.SubElement(name2,"age",attrib={'actual':'19'})

sex2 = XM.SubElement(name2,'sex')

sex2.text = 'gril'

et = XM.ElementTree(namelist1) #生成文档对象

et.write("test.xml", encoding="utf-8",xml_declaration=True)

XM.dump(namelist1) #打印生成的格式

2. 修改

具体代码如下

xm_data = XM.parse('test.xml')

data_root = xm_data.getroot()#获取第一级标签

for i in data_root.iter('sex'):

i.text = 'Super' + i.text

# for j in data_root.iter('age'):#遍历出的属性为字典类型,可参考字典修改方法进行修改。

# print(j.attrib)

xm_data.write('test.xml')

3. 查询

具体代码如下

xm_data = XM.parse('test.xml')

data_root = xm_data.getroot()#获取第一级标签

print(data_root)

for name in data_root:#遍历第一级标签

print(name.tag,name.attrib)

for age in name:#遍历第二级标签

print(age.tag,age.text)

for names in data_root.iter('name'):#过滤性变遍历

print(names.tag,names.text)

4. 删除

具体代码如下xmdata = XM.parse('test.xml') dataroot = xmdata.getroot()#获取第一级标签 for name in dataroot: for age in name.findall('age'): if age.attrib.get('actual'): name.remove(age) xm_data.write('test.xml')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值