缩进和分离
YAML – 缩进和分离
YAML(YAML Ain’t Markup Language)是一种面向人类的数据序列化格式,旨在成为一种比 XML 和 JSON 更易读、更容易编写的格式。与 XML 和 JSON 不同,YAML 不是一种标记语言,而是一种数据格式。它使用缩进和分离来表示数据结构,不需要使用额外的标记语言,这使得它更加容易看懂和编辑。
缩进
YAML 使用缩进来表示嵌套关系,它使用空格而不是制表符。缩进必须使用相同数量的空格,不能混合使用空格和制表符。例如,下面的例子是一个包含嵌套列表的 YAML 文档:
- name: Alice
age: 25
hobbies:
- reading
- hiking
- name: Bob
age: 30
hobbies:
- cooking
- swimming
在上面的例子中,每个列表项都由一个连字符开头,后面跟着一个空格。每行都有相同数量的缩进,子项的缩进比父项的缩进多两个空格,以此表示嵌套关系。
分离
YAML 使用分离来表示键和值之间的关系。冒号(:)用于分离键和值。在冒号后面必须跟着一个空格。例如,下面的例子是一个包含键值对的 YAML 文档:
name: Alice
age: 25
hobbies:
- reading
- hiking
在上面的例子中,每个键值对都由一个冒号分隔,并且键和值之间有一个空格。
多行文本
有时候一个文本值比较长,需要占据多行,YAML 提供了三种方式来表示多行文本:折叠块,字面块和引用块。
折叠块
当一个文本值跨越多行,但是中间没有空行时,可以使用折叠块来表示这个文本。折叠块会将多行文本合并为一行,并删除行末的换行符和空格。在 YAML 中,折叠块使用一个垂直条(|)进行表示。例如:
description: |
This is a long description
that spans multiple lines.
It will be folded into a
single line.
字面块
字面块会原样输出多行文本,包括换行符和空格。在 YAML 中,字面块使用两个垂直条(||)进行表示。例如:
message: ||
This is a long message
that spans multiple lines.
It will be output as
multiple lines.
引用块
引用块将多行文本存储到一个独立的文件中,并在 YAML 中引用该文件。引用块使用一个小于号(<)进行表示。例如:
data:
< multi_line_data.txt
在上面的例子中,数据将从 multi_line_data.txt 文件中读取。
最后更新于