一文看懂 YAML 是什么?YAML 语法和用途简介

YAML 文件使用 .yml 或 .yaml 扩展名,并遵循特定的语法规则。

YAML 拥有 Perl、C、XML、HTML 和其他编程语言的特性。YAML 也是 JSON 的超集,所以 JSON 文件在 YAML 中有效。

没有通常的格式符号,如大括号、方括号、结束标记或引号。YAML 文件更容易阅读,因为其使用 Python 风格的缩进来确定结构并表示嵌套。为了保持跨系统的可移植性,设计时不允许使用制表符,因此改用空格(字面意义的空格字符)。

注释可以用井号或哈希符号(#)。使用注释始终是最佳实践,因为其可描述代码的意图。YAML 不支持多行注释,每行都需要以井号字符为后缀。

YAML 初学者的一个常见问题就是“三个破折号是什么意思?”三个破折号(---)用来表示文档的开始,而三个点(...)表示文档的结束。

这是 YAML 文件一个非常基本的示例:

#Comment: This is a supermarket list using YAML #Note that - character represents the list --- food: - vegetables: tomatoes #first list item - fruits: #second list item citrics: oranges tropical: bananas nuts: peanuts sweets: raisins

请注意,YAML 文件的结构是映射或列表,遵循层次结构,具体取决于缩进以及定义键值的方式。它以映射来关联键值对。每个键必须是唯一的,而且顺序并不重要。这跟 Python 字典或 Bash 脚本中的变量赋值相似。

YAML 中的映射必须经过解析后才能关闭,然后创建新的映射。新的映射可以通过增加缩进级别或解析之前的映射并新建一个相邻映射来创建。

列表包括以特定顺序列出的值,可以包含任何数量的所需项目。一个列表序列以破折号(-)和空格开始,而缩进则将其与父级分开。我们可以把序列看作是一个 Python 列表或者 Bash 或 Perl 中的数组。一个列表可以嵌入到一个映射中。

在上面提供的示例中,“蔬菜”和“水果”表示属于名为“食物”的列表中的部分项目。

YAML 还包含标量,它是以 Unicode 编码的任意数据,可以用作字符串、整数、日期、数字或布尔等值。

在创建 YAML 文件时,需要确保遵循这些语法规则,而且文件必须有效。为此,您可以使用 linter,这是一种验证文件语法的应用。在将 YAML 文件交给应用之前,使用 yamllint 命令可以确保已经创建了一个有效的 YAML 文件。


比丘资源网 » 一文看懂 YAML 是什么?YAML 语法和用途简介

发表回复

提供最优质的资源集合

立即查看 了解详情