YAML文件格式简介

瘦欲@ 提交于 2021-01-02 15:22:51

一、yaml简介

  yaml是一种用来写配置文件的序列化语言,跟json有些像,yaml又称作json的超集,yaml的设计则是为了友好可读性,主要用于配置信息的书写,而json设计的目的则是为了简单和通用,主要用于存储数据和应用层数据通信使用。

二、格式

  yaml主要有三种类型的数据原语:Maps,Lists,Scales(按照官方法表达:“mappings (hashes/dictionaries), sequences (arrays/lists) and scalars (strings/numbers)”),基于这三种数据原语可以组合出任何数据结构。

  • 破折号和空格( “- ” ):Lists集合
  • 冒号和空格( “: ” ) :Maps键值对
  • 井号( “#” ):注释
  • 三个破折号( “---” ):文档内容分隔线(多用于文档开始的地方)
  • 三个冒号( “...” ):表示文档的结束
  • 锚点(“&”),重复项抛锚(“*”):两者成对表达,像定义变量a,再引用变量a的关系,是一种重复项的替换。

  yaml基于缩进的作用域跟python语法格式比较相似,缩进块方便数据的结构化。

注意:yaml文件大小写敏感,不允许使用用tab制表符号代替空格。

三、示例

1、Block Sequences 块序列是一个简单的一系列节点

block sequence:  
  - one
  - two : three

2、锚点符号的示例:

(官方表述:Repeated nodes (objects) are first identified by an anchor (marked with the ampersand - [“&”](https://yaml.org/spec/1.2/spec.html#& anchor//)), and are then aliased (referenced with an asterisk - [“*”](https://yaml.org/spec/1.2/spec.html#* alias//)) thereafter. )

---
hr:
  - Mark McGwire
  # Following node labeled SS
  - &SS Sammy Sosa
rbi:
  - *SS # Subsequent occurrence
  - Ken Griffey

四、结束

  yaml文件格式基本语法介绍完毕。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!