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. 参考文档
相关推荐
007php0074 小时前
某游戏大厂 Java 面试题深度解析(四)
java·开发语言·python·面试·职场和发展·golang·php
景彡先生5 小时前
Python pandas数据透视表(pivot_table)详解:从入门到实战,多维数据分析利器
python·数据分析·pandas
Blossom.1185 小时前
把AI“编”进草垫:1KB决策树让宠物垫自己报「如厕记录」
java·人工智能·python·算法·决策树·机器学习·宠物
极客数模6 小时前
2025年(第六届)“大湾区杯”粤港澳金融数学建模竞赛准备!严格遵循要求,拿下大奖!
大数据·python·数学建模·金融·分类·图论·boosting
倔强青铜三6 小时前
苦练Python第73天:玩转对象持久化,pickle模块极速入门
人工智能·python·面试
程序员三藏7 小时前
Postman持久化保存/设置断言详解
自动化测试·软件测试·python·测试工具·职场和发展·接口测试·postman
java1234_小锋7 小时前
PyTorch2 Python深度学习 - 卷积神经网络(CNN)介绍实例 - 使用MNIST识别手写数字示例
python·深度学习·cnn·pytorch2
雍凉明月夜7 小时前
人工智能学习中深度学习之python基础之迭代器、生成器、文件处理和模块等
python·深度学习·学习·pycharm
nvd117 小时前
python异步编程 -协程的实际意义
开发语言·python