Python xml处理模块
---恢复内容开始---
xml 通过< >节点来区别数据结构
---恢复内容结束---
xml 通过< >节点来区别数据结构
<xml version='1.0'>
<data>
<country name="USA">
<rank updated="yes">19</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor name ="Austria" direction="E"/>
</country>
<country name="Singapore">
<rank updated="yes">99</rank>
<year>2008</year>
<gdppc>141100</gdppc>
<neighbor name ="Switzerland" direction = "W"/>
</country>
</data>
# !/user/bin/python
# -*- coding: utf-8 -*- import xml.etree.ElementTree as ET tree = ET.parse("xmltest.xml")
root = tree.getroot() # xml的内存地址
print(root.tag) # xml中的标签名 # 遍历xml文件
for child in root:
print(child.tag, child.attrib)
for i in child:
print(i.tag, i.text, i.attrib) # 只遍历year节点
for node in root.iter('year'):
print(node.tag, node.text) # 修改xml文档的内容
for node in root.iter('year'):
new_year = int(node.text)+1
node.text = str(new_year)
node.set("updated", "yes") # 给year 添加属性updated, 值为yes
node.set("updated by", "Alex") # 给year 添加属性updated by, 值为Alex
tree.write("xmltest.xml") # 删除node
for country in root.findall("country"):
rank = int(country.fine('rank').text)
if rank > 30: # rank的值大于30时,删掉相应的国家
root.remove('country')
tree.write("output.xml")
# !/user/bin/python
# -*- coding: utf-8 -*- import xml.etree.ElementTree as ET new_xml = ET.Element("personinfolist")
personinfo = ET.SubElement(new_xml, "personinfo", attrib={"enrolled":"yes"})
name = ET.SubElement(personinfo, "name")
name.text = "Alex"
age = ET.SubElement(personinfo, "age", attrib={"checked":"no"})
sex = ET.SubElement(personinfo, "sex")
age.text = ""
personinfo2 = ET.SubElement(new_xml, "personinfo", attrib={"enrolled":"no"})
name = ET.SubElement(personinfo2, "name")
name.text = "Lucy"
age = ET.SubElement(personinfo2, "age")
age.text = "" et = ET.ElementTree(new_xml) # 生成文件对象
et.write("text.xml", encoding='utf-8',xml_declaration=True) ET.dump(new_xml) # 打印生成的格式
Python xml处理模块的更多相关文章
- python xml.dom模块解析xml
1. 什么是xml?有何特征? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 例子:del.xml <?xml version=&q ...
- Python(文件、文件夹压缩处理模块,shelve持久化模块,xml处理模块、ConfigParser文档配置模块、hashlib加密模块,subprocess系统交互模块 log模块)
OS模块 提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目 ...
- Python xml 模块
Python xml 模块 TOC 什么是xml? xml和json的区别 xml现今的应用 xml的解析方式 xml.etree.ElementTree SAX(xml.parsers.expat) ...
- python的XML处理模块ElementTree
ElementTree是python的XML处理模块,它提供了一个轻量级的对象模型.它在Python2.5以后成为Python标准库的一部分,但是Python2.4之前需要单独安装.在使用Elemen ...
- Day6 - Python基础6 模块shelve、xml、re、subprocess、pymysql
本节目录: 1.shelve模块 2.xml模块 3.re模块 4.subprocess模块 5.logging模块 6.pymysql 1.shelve 模块 shelve模块是一个简单的k,v将内 ...
- python基础-7模块,第三方模块安装方法,使用方法。sys.path os sys time datetime hashlib pickle json requests xml
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- 学习PYTHON之路, DAY 6 - PYTHON 基础 6 (模块)
一 安装,导入模块 安装: pip3 install 模块名称 导入: import module from module.xx.xx import xx from module.xx.xx impo ...
- Python自动化 【第五篇】:Python基础-常用模块
目录 模块介绍 time和datetime模块 random os sys shutil json和pickle shelve xml处理 yaml处理 configparser hashlib re ...
- 【Python之路】第六篇--Python基础之模块
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
随机推荐
- 面试之路(27)-链表中倒数第K个结点
代码的鲁棒性: 所谓的鲁棒性是指能够判断输入是否合乎规范,能对不和规范的程序进行处理. 容错性是鲁棒性的一个重要体现. 防御性编程有助于提高鲁棒性. 切入正题,我可不是标题党: 链表倒数第k个节点 列 ...
- 解决水平ListView在ScrollView中出现的滑动冲突
解决的问题有两个: 1)实现水平滑动的ListView.重写AdapterView,上代码: package com.liucanwen.horizontallistview.view; imp ...
- 创建Sencha touch第一个应用
最近学习Sencha touch ,是一个菜鸟级别.废话不多说,让我们来创建Sencha touch的第一应用. 首先,我们下载Sencha touch2.0 sdk 和SDK工具. SDK工具直接 ...
- 关于electron的sqlite3报错,需重新编译的问题
你需要安装sqlite3的所有依赖项,例如vs.python等.或者简单的npm安装命令,它会安装windows下的所有依赖. npm install -g windows-build-tools 然 ...
- js 读取xml文件
读取xml文件 [原创 2007-6-20 17:35:37] 字号:大 中 小 js中读取xml文件,简单的例子: <html><head><script> ...
- Jmeter 性能测试术语
1.5 术语及缩写词 测试时间:一轮测试从开始到结束所使用的时间 并发线程数:测试时同时访问被测系统的线程数.注意,由于测试过程中,每个线程都是以尽可能快的速度发请求,与实际用户的使用有极大差别,所以 ...
- 从输入一个URL到页面完全显示发生了什么?
这是经典的前端问题,主要是对浏览器的工作原理有个理解! 网络通信走的一般是五层因特网协议,详见下图.图片来自于https://images2018.cnblogs.com/blog/882926/20 ...
- javascript DOM编程艺术(检测与性能优化)
一.对象检测(是否支持js方法):只有支持了该方法才可调用 if(!getElementById || getElementsByTagName){ return false; } 二.性能考滤 1. ...
- Xapth 添加注释头
private static void updateMybatisXml(String url, String username, String password) { DocumentBuilder ...
- 第一章 初识数据库Mysql
初识数据库Mysql(my) 在企业中 percona: 一.数据库基础知识 Mysql是一个开放源代码的数据库管理系统(DBMS),它是由Mysql AB公司开发.发布并支持的.Mysql是一个 ...