Python操作XML文件

140 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第20天,点击查看活动详情

XML

XML1. XML概念1.1 概念1.2 xml 功能1.3 xml 与 html 区别1.4 w3c:万维网联盟2. XML 语法2.1 基本语法2.2 快速入门2.3 组成部分3. XML 解析

1. XML概念

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

1.1 概念

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

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

1.2 xml 功能

  • 存储数据

    1.配置文件

    2.在网络中传输

1.3 xml 与 html 区别

  1. xm1标签都是自定义的,html 标签是预定义。
  2. xml的语法严格, html 语法松散
  3. 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 基本语法

  1. xml文档的后缀名. xml
  2. xml第一行必须定义为文档声明
  3. xml文档中有且仅有一个根标签
  4. 属性值必须使用引号(单双都可)引起来
  5. 标签必须正确关闭
  6. 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>

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

image.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.指令
3.标签
4.属性
5.文本