1.注释:使用 # 符号表示注释,从 # 开始到行末都是注释内容。

# 这是一条注释

2.键值对:使用冒号(:)将键和值分隔开,键和值之间用空格分隔。

key: value

键可以是字符串或者未加引号的任意文本,值可以是任意类型的数据,包括字符串、数字、布尔值、列表、字典等。

3.列表:使用连字符(-)表示列表中的元素,每个元素占一行,列表可以包含任意类型的元素。

- item1
- item2
- item3

4.字面量字符串:使用竖线(|)表示字面量字符串,保留原始的换行和缩进。

key: |
  This is a
  multi-line
  string.

5.折叠式字符串:使用大于号(>)表示折叠式字符串,将换行符转换为空格,并且去掉末尾的空格。

key: >
  This is a
  folded string.

6.字典:使用花括号({})表示字典,每个键值对占一行,键和值之间用冒号分隔,键值对之间用逗号分隔。

person:
  name: John
  age: 30
  gender: male

7.引用:使用 & 符号表示引用,使用 * 符号表示引用的值。

ref: &name John
person:
  name: *name
  age: 30

8.空值:使用 ~ 符号表示空值。

key: ~

9.标量类型:YAML 支持多种标量类型,包括字符串、整数、浮点数、布尔值、时间、日期等。

str: "hello, world"
int: 123
float: 3.14
bool: true
date: 2023-04-18
time: 12:34:56

YAML 的语法比较简洁明了,易于阅读和编写,适用于各种场景,例如配置文件、数据传输等。