YAML配置文件的格式

YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)。YAML 的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件、倾印调试内容、文件大纲(例如:许多电子邮件标题格式和YAML非常接近)。YAML 的配置文件后缀为 .yml,如:runoob.yml

基础语法

YAML 通常用来配置文件的编辑,可以近似的看成 map 的映射关系。

  • 元素 : 关键字大小写敏感,分成类 { k e y 1 : v a l u e 1 , k e y 2 : v a l u e 2 } \{ key1: value1 , key2: value2\} {key1:value1,key2:value2},数组,元组 [ ′ R u b y ′ , ′ P e r l ′ , ′ P y t h o n ′ ] [ 'Ruby', 'Perl', 'Python'] [′Ruby′,′Perl′,′Python′],纯量(字符串,布尔值,整数,浮点数,NULL,时间,日期)。
  • 层级关系 : 使用缩进关系表示层级关系,缩进的空格数不重要,只要相同的层级的元素左对齐即可
  • '#'表示注释

映射关系 :

  • 对象键值对使用冒号结构表示 key: value,冒号后面要加一个空格,也可以使用 key:{key1: value1, key2: value2, ...}。还可以使用缩进表示层级关系;
  • 较为复杂的对象格式,可以使用问号加一个空格代表一个复杂的 key,配合一个冒号加一个空格代表一个 value:

第一种对象举例

yaml 复制代码
key: 
    child-key: value
    child-key2: value2

第二种对象举例

yaml 复制代码
?  
    - complexkey1
    - complexkey2
:
    - complexvalue1
    - complexvalue2

详细解释

  1. 数组的构建

以 - 开头的行表示构成一个数组:

  • A
  • B
  • C

一个相对复杂的例子:

yaml 复制代码
companies:
    -
        id: 1
        name: company1
        price: 200W
    -
        id: 2
        name: company2
        price: 500W
  1. 日期采用复合 iso8601 格式的年、月、日表示。
javascript 复制代码
date: 1976-07-31
  1. 可以空行在写入内容。
  2. 参考文档
相关推荐
测试19985 小时前
软件测试 - 单元测试总结
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
曲幽7 小时前
我用了FastApiAdmin后,连夜把踩过的坑都整理出来了
redis·python·postgresql·vue3·fastapi·web·sqlalchemy·admin·fastapiadmin
前端若水9 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
涛声依旧-底层原理研究所9 小时前
残差连接与层归一化通俗易懂的详解
人工智能·python·神经网络·transformer
csdn_aspnet10 小时前
Python 算法快闪 LeetCode 编号 70 - 爬楼梯
python·算法·leetcode·职场和发展
fantasy_arch10 小时前
pytorch人脸匹配模型
人工智能·pytorch·python
熊猫_豆豆10 小时前
广义相对论水星近日点进动完整详细数学推导
python·天体·广义相对论
web3.088899910 小时前
1688 图搜接口(item_search_img / 拍立淘) 接入方法
开发语言·python
AI算法沐枫11 小时前
深度学习python代码处理科研测序数据
数据结构·人工智能·python·深度学习·决策树·机器学习·线性回归
X1A0RAN12 小时前
解决Pycharm中部分文件或文件夹被隐藏不展示问题
ide·python·pycharm