目录:导读
前言
YAML详解
YAML它的设计目标是使数据在不同编程语言之间交换和共享变得简单。YAML采用了一种简洁、直观的语法,以易于阅读和编写的方式表示数据结构。
YAML广泛应用于配置文件、数据序列化、API设计和许多其他领域。它被许多编程语言和框架所支持,包括Python、Java、Ruby等。在Python中,可以使用PyYAML库来读取和写入YAML文件。
YAML的优点包括易读性高、易于理解、与多种编程语言兼容以及支持丰富的数据结构。它的简洁语法使得配置文件变得更加直观和可维护。无论是作为配置文件格式还是数据交换格式,YAML都是一个强大而受欢迎的选择。
YAML语法规范
YAML的语法特点包括:
使用缩进表示层级关系,不使用大括号或者其他符号;
使用冒号来表示键值对;
支持列表和嵌套结构;
使用注释以 “#” 开头;
支持引用和锚点,可以在文档中引用其他部分的数据;
YAML支持多种数据类型,包括字符串、数字、布尔值、列表、字典和空值。下面是每种数据类型的示例代码和相应的语法规范:
字符串
语法规范:使用单引号或双引号将字符串括起来。字符串的引号也可以省略
name: "John"
addr: "长沙"
数字
语法规范:直接写入数字即可。
age: 30
布尔值
语法规范:使用true表示真,使用false表示假。
isStudent: true
isTeacher: false
列表
语法规范:使用短横线(-)表示列表项,列表项之间使用换行进行分隔。
fruits:
- apple
- banana
- orange
字典
语法规范:使用冒号(:)表示键值对,键值对之间使用空格进行分隔。
person:
name: "John"
age: 30
空值
语法规范:使用null表示空值。
status: null
这些是YAML支持的常见数据类型和相应的示例代码。您可以根据需要使用这些数据类型来构建复杂的数据结构。
注意 :
YAML对于缩进非常敏感,使用空格进行缩进来表示层级关系。
缩进的空格数目可以是2个或4个,但在整个文档中必须保持一致。
Python操作YAML
Python提供了pyyaml库来操作YAML文件,操作yaml文件之前,先安装好pyyaml库。
在终端(Pycharm-Terminal)或命令提示符(cmd)中运行以下命令来安装pyyaml库:
pip install pyyaml
python读取yaml文件
第一步:提前准备好的yaml文件,yaml文件后缀为.yaml或者.yml
name: "John"
addr: "长沙"
age: 18
status: null
isStudent: true
fruits:
- apple
- banana
- orange
teacher:
name: "Alex"