ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

toml文件

toml文件 文章目录什么是tomlTOML 最基础的语法key value键值对[table]表/分组[a.b.c]嵌套表. 左边如果是 Table就进入这个 Table如果是 Array of Tables就进入它“最近创建的那个 Table 元素[]数组{}内联表字符串、数字、布尔值注释[[...]]表数组内联表嵌套dotted key点分键总结校验是否理解“分组名 键 值”[project]单层方括号包住名字是配置分组方括号里的点 . 表示层级第一层TOML 规定“这个文件语法怎么写”。第二层具体程序规定“这些字段分别是什么意思每一层的名字都是键名最里面最终对应一个值什么是tomlTOML 理解成一种专门写配置的文本文件格式和 JSON、YAML 类似但更适合人手工看和改TOML 最基础的语法key value键值对[table]表/分组[table] 的作用就是把下面的一组配置归到同一个“对象/分组”里面[table] 最主要的作用就是组织配置避免所有键都堆在最外层[table] 就是在 TOML 里创建一个“分组/对象”后面的键值放到这个对象里面解析后通常表现成一个嵌套字典/对象。用 Python 的思维来理解TOML 里的 table 基本可以理解成“字典 dict”[a] 可以理解成“创建一个键 a它的值是一个 table。”[a.b.c]嵌套表. 在这里表示table 的嵌套层级. 没有什么神秘的就是告诉解析器“Table 套 Table”[a.b.c]x 1可以理解成-a是最外层的键值是一个 table-b是a 这个 table 里的键值也是一个 table-c是b 这个 table 里的键值还是一个 table-x是c 这个 table 里的键值是 1. 可以先记成往下一层走右边的是左边那个 Table 里面的键. 左边如果是 Table就进入这个 Table如果是 Array of Tables就进入它“最近创建的那个 Table 元素[ ] / [[ ]] 主要决定最后一级路径中间层如果没定义过就隐式创建成 Table。如果某个中间层之前已经是 Array of Tables就不会改类型而是进入它最近创建的那个 Table 元素路径中的下一层始终是“当前选中的 Table”里的一个键左边是 Table→ 当前 Table 就是它自己左边是 Array of Tables→ 当前 Table 是它最近创建的那个 Table 元素a.b.c先处理 a↓确定当前 Table↓b 是当前 Table 里的键↓再把 b 对应的 Table 当成当前 Table↓c 是里面的键[]数组{}内联表把一个小 table 直接写在一行里a { … } 就是在右边直接定义一个小 table[a] 是先进入 a 这个 table再在下面逐项写内容字符串、数字、布尔值“demo” 是字符串就是文本。通常要加引号数字不用加引号。也可以是小数true/false 布尔值注释#就是 TOML 里的注释符号。意思是#后面的内容只是给人看的程序解析 TOML 时会忽略。[[…]]表数组[[…]] 表示 “表的数组”是一个数组每个元素是一个table每出现一次[[users]]就相当于users列表里新增一个对象[a]→ a 是一个字典/table[[a]]→ a 是一个列表列表里的每个元素都是一个字典/table内联表嵌套dotted key点分键比如 a.b.c 1意思是a 是一个键值是 Tableb 是 a 这个 Table 里的键值也是 Tablec 是 b 这个 Table 里的键c 的值是 1总结Table 键 → 值 的字典Array 一组有顺序的元素 Array of Tables Array里面每个元素都是Table路径里遇到 Array of Tables要先进入最近创建的 Table 元素再继续往右走路径中出现的是上一层的键第一关Arraya [1, 2, 3]你需要解释清楚a 是什么a 的值是什么类型1、2、3 又是什么第二关Table[a]x 1y 2a 是键a 的值是一个 Table第三关嵌套 Table[a.b.c]x 1b 是 a 这个 Table 里的键c 是 b 这个 Table 里的键x 是 c 这个 Table 里的键第四关Array of Tables[[a]]x 1[[a]]x 2你要先判断a 的值是不是 Table不是。a 的值是Array。而这个 Array 里面每一个元素都是Table。校验是否理解“分组名 键 值”[project]单层方括号包住名字是配置分组方括号里的点 . 表示层级第一层TOML 规定“这个文件语法怎么写”。第二层具体程序规定“这些字段分别是什么意思TOML 只规定“怎么写”具体程序规定“写什么、这些字段有什么作用”。先有 TOML 规范规定语法程序用 TOML 解析器把文件解析成数据然后程序再按照自己的配置规范读取其中的字段每一层的名字都是键名最里面最终对应一个值TOML 解析完以后程序拿到的通常就是一个“字典/对象”然后按键名一层一层取
返回列表