Yaml
YAML 是一种人类可读的(易于阅读和理解)数据序列化语言,通常用于编写配置文件。使用 YAML 的一个好处是,在 Github 中可以跟踪和审核更改。
语法规则
-
YAML 文件使用 .yml 或 .yaml 扩展名,并遵循特定的语法规则。YAML 也是 JSON 的超集,因此 JSON 文件在 YAML 中有效。
-
没有常用的格式符号,例如大括号、方括号、结束标记或引号。因为它们使用 Python 风格的
空格缩进来确定结构并指示嵌套。 -
注释可以用井号或井号 (#) 来标识。(不支持多行注释)
-
破折号:3 个破折号 (---) 用于表示文档的开始。
-
大小写敏感
-
换行转化空格
YAML 支持的数据结构有三种。
- 对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 字典(dictionary)
- 数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)
- 纯量(scalars):字符串、 布尔值、 整数、 浮点数、 Null、 时间、 日期
基本语法例子 🌰
---
# : 代表对象
languages:
# - 代表数组
- Ruby
Perl
- Python
websites:
date: 1976-07-31
str: 这是一行字符串
bool: true
# 注释:~ 代表null
parent: ~
# 注释:!! 代表强制转换数据类型
f: !!str true
# & 用来建立锚点(defaults)* 用来引用锚点 << 表示合并到当前
defaults: &defaults
adapter: postgres
host: localhost
development:
database: myapp_development
<<: *defaults