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基础之模块
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
随机推荐
- 开源组件photoView学习
功能特性 支持放缩超出边界,多点触控和双击事件 滚动和滑动 和ViewPager等能完美兼容 矩阵变化等有回调,方便前台其他展示的改变 单击,长按都有回调提醒 源码剖析 那么怎么来学习他的源码呢,我们 ...
- 初探linux子系统集之写在前言
毕业两周年,进入嵌入式linux这个行业也已两个年头有余,从开始的linux驱动,android的framework,到现在的linux应用,android的app以及产品的零零总总,其实很想把这些都 ...
- iOS AFNetworking使用技巧与问题
1.很多初学者,在每处用到网络请求的地方会直接拿afn实例去请求,从而带来了后续难以维护代码的问题 [[AFHTTPSessionManager manager] POST:nil parameter ...
- RHEL 6 mdadm 实现Soft Raid
环境:RHEL 6.9 x64 1.mdadm命令用于管理系统软件RAID硬盘阵列 格式为:"mdadm [模式] <RAID设备名称> [选项] [成员设备名称]". ...
- Razor视图
@{ string name="jerry";} <div> @name </div> //显示jerry @{ string js="& ...
- python 脚本自动登陆校园网
学校的校园网每次重开电脑时都要重新打开浏览器进行网页登录,繁琐的操作比较麻烦,于是便写了个python的脚本进行自动登录,下面说下具体的操作过程: 1. 方法说明 博主采用的python的 reque ...
- Scala编程入门---函数式编程
高阶函数 Scala中,由于函数时一等公民,因此可以直接将某个函数传入其他函数,作为参数.这个功能是极其强大的,也是Java这种面向对象的编程语言所不具备的. 接收其他函数作为函数参数的函数,也被称作 ...
- 学习MySQL我们应该知道哪些东西?
随笔:小编由于年前一直在找工作,而年后找到工作后又一直在忙工作,所以也很少有时间给大家写点什么,总的来说呢,回顾一下之前面试的几次经历,也曾小小的总结了一下自己的不足,发现自己虽然一直在原有的公司(外 ...
- SOFA 源码分析 — 预热权重
前言 SOFA-RPC 支持根据权重对服务进行预热功能,具体地址:预热权重. 引用官方文档: 预热权重功能让客户端机器能够根据服务端的相应权重进行流量的分发.该功能也常被用于集群内少数机器的启动场景. ...
- SpringBoot19 集成SpringSecurity01 -> 环境搭建、SpringSecurity验证
1 环境搭建 1.1 创建一个SpringBoot项目 项目脚手架 -> 点击前往 1.2 创建一个Restful接口 新建一个Controller类即可 package com.example ...