Python操作XML文件

简介: XML:可扩展标记语言 (Extensible Markup Language, XML) ,标准通用标记语言的子集,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML是标准通用标记语言 可扩展性良好,内容与形式分离,遵循严格的语法要求,保值性良好等优点.

文章目录


1. XML概念

1.1 概念

1.2 xml 功能

1.3 xml 与 html 区别

1.4 w3c:万维网联盟

2. XML 语法

2.1 基本语法

2.2 快速入门

2.3 组成部分

3.XML 约束

3.1 XML约束

4. XML 解析


1. XML概念


XML:可扩展标记语言 (Extensible Markup Language, XML) ,标准通用标记语言的子集,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML是标准通用标记语言 可扩展性良好,内容与形式分离,遵循严格的语法要求,保值性良好等优点.


1.1 概念


可扩展标记语言 可扩展:标签都是自定义的。


(html 标签都系统是规定好的,每个标签都有不一样的含义;xml 标签没有一个是规定好的都是自定义的标签。只要符合命名规则。 )


1.2 xml 功能


存储数据


1.配置文件


2.在网络中传输


1.3 xml 与 html 区别


xm1标签都是自定义的,html 标签是预定义。

xml的语法严格, html 语法松散

xml是存储数据的,html是展示数据


1.4 w3c:万维网联盟

xml 与 html 是 两兄弟他们的父亲是 w3c(万维网联盟)
早期只有html 没有xml 。早期html很火,语法简单,大部分浏览器都支持html,后来浏览器之间的竞争
w3C后来规范出了xml. 
xml与html竞争郁郁寡欢,之后xml与properties竞争
# properties
name=zhangsan
age=23
gender=nan
name=lisi
age=24
gender=nv
# xml  阅读性高,不在是展示数据,而是存储数据
<user id="1">
    <name>zhangsan</name>
    <age>23</age>
</user>
<user id="2">
    <name>lisi</name>
    <age>25</age>
</user>


2. XML 语法


2.1 基本语法

xml文档的后缀名. xml

xml第一行必须定义为文档声明

xml文档中有且仅有一个根标签

属性值必须使用引号(单双都可)引起来

标签必须正确关闭

xml 标签名称区分大小写


2.2 快速入门

<?xml version="1.0" encoding="UTF-8" ?>
<users>
    <user id="1">
        <name>zhangsan</name>
        <age>23</age>
    </user>
    <user id="2">
        <name>lisi</name>
        <age>25</age>
    </user>
</users>

检查写的有没有问题,写完文件可以直接拖到浏览器中,不报错说明格式没问题

微信图片_20221012204843.png

2.3 组成部分


1.文档声明

2.指令

3.标签

4.属性

5.文本

1.文档声明
   1.格式:<?xml 属性列表 ?>
   2.属性列表
      *version: 版本号,必须的属性
      *encoding :编码方式。告知解析引擎当前文档使用的字符集,默认值: IS0- 8859-1
      *standalone:是否独立
          *取值:
              * yes: 不依赖其他文件
              * no: 依赖其他文件
         <?xml version="1.0" encoding="UTF-8" standalone='yes' ?> 
2.指令(了解):结合css的
   < ?xml- stylesheet type= "text/css“  href="a.css'?>
3.标签
   规则:
   *名称可以包含字母、数字以及其他的字符
   *名称不能以数字或者标点符号开始
   *名称不能以字母xml (或者XML、Xml等等)开始
   *名称不能包含空格
4.属性
   id属性是唯一的
5.文本
   CDATA区 :在该区域中的数据会被原样展示
       格式: <![CDATA[ 数据|]]>

3.XML 约束


3.1 XML约束


约束:规定xml文档的书写规则

*作为框架的使用者(程序员) :

1.能够在xm1中引入约束文档

2.能够简单的读懂约束文档

微信图片_20221012204852.png

3.2 *分类:


DTD:一种简单的约束技术


Schema: -种复杂的约束技术


*DTD:

*引入dtd文档到xml文档中

*内部dtd :将约束规则定义在xml文档中

*外部dtd :将约束的规则定义在外部的dtd文件中

*本地:

*网络:


4. XML 解析


目录
相关文章
|
8月前
|
机器学习/深度学习 存储 算法
解锁文件共享软件背后基于 Python 的二叉搜索树算法密码
文件共享软件在数字化时代扮演着连接全球用户、促进知识与数据交流的重要角色。二叉搜索树作为一种高效的数据结构,通过有序存储和快速检索文件,极大提升了文件共享平台的性能。它依据文件名或时间戳等关键属性排序,支持高效插入、删除和查找操作,显著优化用户体验。本文还展示了用Python实现的简单二叉搜索树代码,帮助理解其工作原理,并展望了该算法在分布式计算和机器学习领域的未来应用前景。
|
3月前
|
编译器 Python
如何利用Python批量重命名PDF文件
本文介绍了如何使用Python提取PDF内容并用于文件重命名。通过安装Python环境、PyCharm编译器及Jupyter Notebook,结合tabula库实现PDF数据读取与处理,并提供代码示例与参考文献。
|
3月前
|
编译器 Python
如何利用Python批量重命名文件
本文介绍了如何使用Python和PyCharm对文件进行批量重命名,包括文件名前后互换、按特定字符调整顺序等实用技巧,并提供了完整代码示例。同时推荐了第三方工具Bulk Rename Utility,便于无需编程实现高效重命名。适用于需要处理大量文件命名的场景,提升工作效率。
|
3月前
|
XML 存储 Java
Python-docx编号列表解析:从XML迷宫到结构化数据的破局之道
本文深入解析了Word文档中自动编号的存储机制及解析难题,探讨了其在技术处理中的障碍,并通过三种实战方案对比,帮助开发者高效提取结构化数据。内容涵盖底层XML结构、常见问题解决方案及性能优化技巧,适用于合同条款、文档自动化处理等场景。
176 0
|
4月前
|
编解码 Prometheus Java
当Python同时操作1000个文件时,为什么你的CPU只用了10%?
本文介绍如何构建一个高效的文件处理系统,解决单线程效率低、多线程易崩溃的矛盾。通过异步队列与多线程池结合,实现任务调度优化,提升I/O密集型操作的性能。
73 4
|
3月前
|
XML 存储 缓存
Python-docx编号列表解析:从XML迷宫到结构化数据的破局之道
Word文档中的自动编号功能虽便捷,却在技术处理时常成为障碍。本文深入解析Word文档的XML结构,揭示编号信息的存储机制,并提供多种基于Python的解决方案,涵盖跨平台解析、性能优化及固定模板处理,助力开发者突破编号解析难题,实现合同条款等内容的结构化提取与处理。
110 0
|
5月前
|
Android开发 开发者
Android自定义View之不得不知道的文件attrs.xml(自定义属性)
本文详细介绍了如何通过自定义 `attrs.xml` 文件实现 Android 自定义 View 的属性配置。以一个包含 TextView 和 ImageView 的 DemoView 为例,讲解了如何使用自定义属性动态改变文字内容和控制图片显示隐藏。同时,通过设置布尔值和点击事件,实现了图片状态的切换功能。代码中展示了如何在构造函数中解析自定义属性,并通过方法 `setSetting0n` 和 `setbackeguang` 实现功能逻辑的优化与封装。此示例帮助开发者更好地理解自定义 View 的开发流程与 attrs.xml 的实际应用。
Android自定义View之不得不知道的文件attrs.xml(自定义属性)
|
4月前
|
人工智能 索引 Python
[oeasy]python094_使用python控制音符列表_midi_文件制作
本文介绍了如何使用Python控制音符列表制作MIDI文件。首先回顾了列表下标索引(正数和负数)的用法,接着通过`mido`库实现MIDI文件生成。以《两只老虎》为例,详细解析了代码逻辑:定义音高映射、构建旋律列表、创建MIDI文件框架,并将音符插入音轨。还探讨了音符时值与八度扩展的实现方法。最终生成的MIDI文件可通过不同平台播放或编辑。总结中提到,此技术可用于随机生成符合调性的旋律,同时引发对列表其他实际应用的思考。
110 6
|
6月前
|
Python
使用Python实现multipart/form-data文件接收的http服务器
至此,使用Python实现一个可以接收 'multipart/form-data' 文件的HTTP服务器的步骤就讲解完毕了。希望通过我的讲解,你可以更好地理解其中的逻辑,另外,你也可以尝试在实际项目中运用这方面的知识。
270 69
|
3月前
|
数据采集 监控 算法
Python文件与目录比较全攻略:从基础操作到性能优化
文件比较的核心在于数据指纹校验,通过逐字节比对生成唯一标识,确保内容一致性。从标准库的os与filecmp到高性能第三方库如pydiffx,再到分布式与量子加密技术的未来趋势,文件比较广泛应用于数据备份、代码审查与系统监控等领域,是保障数据完整性的关键技术手段。
89 0

推荐镜像

更多