博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
XML模块
阅读量:6442 次
发布时间:2019-06-23

本文共 1619 字,大约阅读时间需要 5 分钟。

'''类似于data、country、rank、year、GDP这样前后都有的,叫标签tag    类似于name="america"、updated="yes"这样跟在标签后面,在尖括号里面的叫属性    类似于2、2008、15222这样跟在尖括号外面的叫文本text'''
1 import xml.etree.ElementTree as ET2 tree = ET.parse('xml_1')   #解析(parse)XML_test中的数据3 root = tree.getroot()4 print(root.tag)             #拿到根的标签(tag),即data

遍历xml文档:

for child in root:    print(child.tag,child.attrib)   #打印子目录的标签和属性(attribute)    for i in child:        print(i.tag,i.text)         #打印孙目录的标签和文本text

修改:

for node in root.iter('year'):    new_year = int(node.text) + 1    #年份加1    node.text = str(new_year)    node.set('updated','yes')     #设置属性updated为yestree.write('xml_2.xml')           #不能直接修改原文件,重写到xml_2.xml

移除排名10以后的国家:

for country in root.findall('country'):    rank = int(country.find('rank').text)    if rank >10:        root.remove(country)tree.write('xml_3.xml')

自己创建一个xml文件:

1 import xml.etree.ElementTree as ET 2 new_xml = ET.Element('namelist')   #创建一个namelist单元 3 name = ET.SubElement(new_xml,'name',attrib={
'enrolled':'yes'}) #在new_xml下创建子单元name 4 age = ET.SubElement(name,'age',attrib={
'checked':'no'}) #在name下创建子单元age 5 sex =ET.SubElement(name,'sex') #在name下创建子单元sex 6 age.text = '33' #设置age的文本值 7 sex.text = 'M' #设置sex的文本值 8 9 name2 = ET.SubElement(new_xml,'name2',attrib={
'enrolled':'no'})10 age = ET.SubElement(name2,'age')11 age.text = '19'12 13 et =ET.ElementTree(new_xml) #生成文档对象14 et.write('test.xml',encoding='utf-8',xml_declaration=True) #将其写入.xml文件15 ET.dump(new_xml) #打印生成的格式

 

 

转载于:https://www.cnblogs.com/Finance-IT-gao/p/10501551.html

你可能感兴趣的文章
朱兰的质量三部曲——《可以量化的管理学》
查看>>
丰田生产方式和TOC工序切换时间的解决
查看>>
2017年勒索软件、物联网攻击将继续肆虐
查看>>
用友网络董事长王文京为何出现在乌镇大会中?
查看>>
大学团队打造手语翻译机器人,完整安装下来需要149个小时
查看>>
Wireshark抓包分析/TCP/Http/Https及代理IP的识别
查看>>
不同包下,相同数据结构的两个类进行转换
查看>>
软件安装(linux)
查看>>
TeamPlain for VSTS - Web Access for Team System-TFS 跨平台的客户端
查看>>
面对前车之鉴的AR,现在的VR要做些什么?
查看>>
vscode 换行符\n 变成\r\n
查看>>
一个绘制虚线的非常规函数(常规方法,打印机上绘制不出虚线)
查看>>
获得本机的IP,掩码和网关
查看>>
大数据之 ZooKeeper原理及其在Hadoop和HBase中的应用
查看>>
Delphi中将XML文件数据装入DataSet
查看>>
你刚才在淘宝上买了一件东西
查看>>
发布一个 Linux 下的 C++ 多线程库
查看>>
Python序列类型
查看>>
再谈ThinkPHP
查看>>
Hibernate问题浅析
查看>>