前言
Toml学习笔记
Toml的顶层只能是对象,而JSON的顶层可以是数组
注释
定义键值对
定义有层级关系的键值对
- 已经被定义为父级的键,不能再为其赋值,只能继续为其子级赋值
多级
值的数据类型
字符串
包哈转义字符的字符串
多行字符串
- 通过三对双引号定义的字符串
- 要在三个双引号的下一行输入需要定义的值,而非Python一样在三个双引号后面定义输出的值
- 文本中的转义字符会被转义
1 2 3 4
| key = """ value1\n value2 """
|
去除行末的空白字符和换行符
1 2 3 4
| key = """ value1\ value2\ """
|
不包含转义字符的字符串(字面量字符串)
多行字符串
- 通过三对单引号定义的字符串
- 要在三个单引号的下一行输入需要定义的值,而非Python一样在三个单引号后面定义输出的值
- 文本中的转义字符不会被转义
- 可以在字符串中出现单引号
1 2 3 4
| key = ''' value1\n' value2 '''
|
数值
布尔值
数组
嵌套数组
表
多级表
1 2
| [table.table] key = "value"
|
1
| table.table.key = "value"
|
内联表
1 2
| [table.table] key = { key = "value" }
|
表数组
- 相当于对象数组
- 表数组可以有多个相同表名的表,因为都包含在同一数组
1 2 3 4
| [[table]] key1 = "value" [[table]] key2 = "value"
|
1 2 3 4
| table = [ { key1 = "value" }, { key2 = "value" }, ]
|
表下面内容无法提前一级
1 2 3
| key2 = "value" [table] key1 = "value"
|
1 2 3
| [table] key1 = "value" key2 = "value"
|
表下面的内容再定义表是同级而非父子级
1 2 3
| [table1] [table2] key = "value"
|
1 2
| [table1.table2] key = "value"
|
完成
参考文献
哔哩哔哩——EfficLab实验室