第七章 yaml格式


一、簡單說明

yaml是一個可讀性高,用來表達數據序列的格式。YAML 的意思其實是:仍是一種標記語言,但為了強調這種語言以數據做為中心,而不是以標記語言為重點

二、基本語法

縮進時不允許使用Tab鍵,只允許使用空格縮進的空格

數目不重要,只要相同層級的元素左側對齊即可

# 標識注釋,從這個字符一直到行尾,都會被解釋器忽略

三、YAML 支持的數據結構

對象:鍵值對的集合,又稱為映射(mapping/ 哈希(hashes/ 字典(dictionary

數組:一組按次序排列的值,又稱為序列(sequence/ 列表(list

純量(scalars):單個的、不可再分的值

四、寫法

1對象類型

對象的一組鍵值對,使用冒號結構表示

name: Steve

age: 18

Yaml 也允許另一種寫法,將所有鍵值對寫成一個行內對象

hash: { name: Steve, age: 18 }

2數組類型

一組連詞線開頭的行,構成一個數組

animal

- Cat

- Dog

數組也可以采用行內表示法

animal: [Cat, Dog]

3復合結構

對象和數組可以結合使用,形成復合結構

languages:

- Ruby

- Perl

- Python

websites:

YAML: yaml.org

Ruby: ruby-lang.org

Python: python.org

Perl: use.perl.org

 

4純量

純量是最基本的、不可再分的值。以下數據類型都屬於純量

1 字符串 布爾值 整數 浮點數 Null

2 時間 日期

數值直接以字面量的形式表示

number: 12.30

 

布爾值用truefalse表示

isSet: true

 

null~ 表示

parent: ~

 

時間采用 ISO8601 格式

iso8601: 2001-12-14t21:59:43.10-05:00

 

日期采用復合 iso8601 格式的年、月、日表示

date: 1976-07-31

 

YAML 允許使用兩個感嘆號,強制轉換數據類型

e: !!str 123

f: !!str true

 

5字符串

字符串默認不使用引號表示

str: 這是一行字符串

 

如果字符串之中包含空格或特殊字符,需要放在引號之中

str: '內容:字符串'

 

單引號和雙引號都可以使用,雙引號不會對特殊字符轉義

s1: '內容\n字符串'

s2: "內容\n字符串"

 

單引號之中如果還有單引號,必須連續使用兩個單引號轉義

str: 'labor''s day'

 

字符串可以寫成多行,從第二行開始,必須有一個單空格縮進。換行符會被轉為空格

str: 這是一段

多行

字符串

多行字符串可以使用|保留換行符,也可以使用>折疊換行

this: |

Foo

Bar

that: >

Foo

Bar

+ 表示保留文字塊末尾的換行,- 表示刪除字符串末尾的換行+也為默認值)

s1: |

Foo

s2: |+

Foo

s3: |-

  Foo

 

鏈接:https://www.bilibili.com/video/av66617940/?p=16

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM