Python连载44-XML其他注意点
一、XML文件注意点
1.内容中不能出现尖括号
例如:下面是不合法的
<grade>成绩<90</grade>
解决方案:使用实体引用<EntityReference>,可以理解为转义
<grade>成绩&st;90</grade> #<代表小于号,>代表大于号
2.另一种方法:把含有保留字符的部分放在CDATA块内部,CDATA块把内部信息视为不需要转义
<![CDATA[ select name,age from Student where score>80 ]]>
3.常用的需要转义的保留字符和对应的实体应用
&:&
<:<
>:>
':'
":"
一共五个,每个实体引用都是以&开头并且以分号结尾的
4.命名规则
Pascal命名法;用单词命名,首字母大写;大小写严格区分;配对的标签必须是一致的。
5.命名空间
为了防止命名冲突,需要给可能产生冲突的元素添加命名空间
xmlns:xml name space 的缩写
例子:
<Schooler xmlns:student="http://my_student" xmlns="http://my_room">
<student:Name>LiuYing</student:Name><!--其实这里面的name容易产生歧义,所以定义了两个命名空间来对name加以区分-->
<Age>23</Age>
<room:Name>2014</room:Name>
<Location>1-23-1</Location>
</Schooler>
6.xml访问
(1)读取
SAX(Simple API for XML):基于事件驱动API
利用SAX解析文档设计到解析器和事件处理两部分
特点:i.快;ii.流式读取(通俗的来说按顺序读下去);
DOM:i.是w3c规定的XML编程接口;ii.一个XML文件在缓存中以树形结构保存,读取;iii.用途:定位浏览XML任何一个节点信息;添加删除相应内容;iv.minidom:
minidom.parse(filename):加载读取的xml文件,filename也可以是xml代码。
doc.documentElement:获取xml文档对象,一个xml文件只有一个对于的文档对象。
node.getAttribute(attr_name):获取xml节点的属性值。
node.getElementByTagName(tag_name):得到一个节点对象集合。
node.childNodes:得到所有孩子节点。
node.childNodes[indexs].nodeValue:获取单个节点值。
node.fistNode:得到第一个节点,等价于:node.childInde[0]
node.attributes[tag_name]
三、源码
D30_1_XmlNameSpace.xml
https://github.com/ruigege66/Python_learning/blob/master/D30_1_XmlNameSpace.xml
2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Python连载44-XML其他注意点的更多相关文章
- 用 ElementTree 在 Python 中解析 XML
用 ElementTree 在 Python 中解析 XML 原文: http://eli.thegreenplace.net/2012/03/15/processing-xml-in-python- ...
- python标准库xml.etree.ElementTree的bug
使用python生成或者解析xml的方法用的最多的可能就数python标准库xml.etree.ElementTree和lxml了,在某些环境下使用xml.etree.ElementTree更方便一些 ...
- 在python中处理XML
XML是实现不同语言或程序之间进行数据交换的协议,XML文件格式如下: <data> <country name="Liechtenstein"> < ...
- [python标准库]XML模块
1.什么是XML XML是可扩展标记语言(Extensible Markup Language)的缩写,其中的 标记(markup)是关键部分.您可以创建内容,然后使用限定标记标记它,从而使每个单词. ...
- python专题-读取xml文件
关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是 ...
- python模块:xml
"""Core XML support for Python. This package contains four sub-packages: dom -- The W ...
- 【304】python专题-读取xml文件
参考:XML DOM 参考手册(w3school) 参考:python专题-读取xml文件 参考:请问用python怎么修改xml的节点值? 1. 读取标签内的文本(Python) 如下的 xml 文 ...
- Python模块 shelve xml configparser hashlib
常用模块1. shelve 一个字典对象模块 自动序列化2.xml 是一个文件格式 写配置文件或数据交换 <a name="hades">123</a>3. ...
- Python连载13-shutile模块(续)和zipfile模块
一.shutil模块(续) 1.函数:upack_archive() (1)用法:解包操作 (2)格式:shutil.unpack_archive("归档文件地址“,”解包之后的地址“) ( ...
- Python连载12-shutil模块
一.shutil模块 1.函数:copy() (1)用法:复制文件0 (2)格式:copy(来源路径,目标路径) (3)返回值:返回目标路径 (4)注意:拷贝的同时可以给文件重命名 source_pa ...
随机推荐
- 完全卸载Android Studio(卸载得干干净净)
步骤其实很简单,一共三步,但是每一步都需要完成,步骤如下: 打开控制面板或腾讯软件管家等执行常规的卸载操作. 找到SDK的安装目录手动删除SDK. 进入“C:\Users\<你的用户名下> ...
- 白话 MVC、MVP、MVVP
白话 MVC.MVP.MVVP 注意这里单纯的通过例子来讲解 MVC MVP MVVP 这三种架构模式的起源和作用,不牵扯某种特定的语言.具体到各种语言各种软件系统上体现有所不同,但是原理都是这样的. ...
- Git介绍与简易搭建
Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...
- Flutter速记
一.安装 参考https://www.jianshu.com/p/cda416e2fc0d 二.换图标 三.打包 参考:https://www.cnblogs.com/shuang ...
- 经典案例:如何优化Oracle使用DBlink的SQL语句
转自 https://blog.csdn.net/Enmotech/article/details/78788083 作者介绍 赵全文 就职于太极计算机股份有限公司,在中央电化教育馆做Oracle D ...
- java 报错 System.out.printIn 错误: 找不到符号
java 运行 System.out.printIn() 报错 ,java System.out.println 这是错误示范 !!! System.out.printIn("仔细看看pri ...
- August 25th, 2019. Sunday, Week 35th.
It's what you do next that counts, not what happens but what you decide to do about it. 重点不是发生了什么,而是 ...
- acwing 853. 有边数限制的最短路 模板
地址 https://www.acwing.com/problem/content/description/855/ 给定一个n个点m条边的有向图,图中可能存在重边和自环, 边权可能为负数. 请你求出 ...
- [CodeForces - 1225D]Power Products 【数论】 【分解质因数】
[CodeForces - 1225D]Power Products [数论] [分解质因数] 标签:题解 codeforces题解 数论 题目描述 Time limit 2000 ms Memory ...
- java之操作集合的工具类--Collections
Collections是一个操作Set.List和Map等集合的工具类. Collections中提供了大量方法对集合元素进行排序.查询和修改等操作,还提供了对集合对象设置不可变.对集合对象实现同步控 ...