一、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文件格式基本語法介紹完畢。