自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

數(shù)據(jù)序列化語(yǔ)言 YAML 使用入門

系統(tǒng) Linux
YAML(YAML 不是標(biāo)記語(yǔ)言)是一種適宜閱讀理解的數(shù)據(jù)序列化語(yǔ)言。它的語(yǔ)法簡(jiǎn)單而易于閱讀。它不包含引號(hào)、打開和關(guān)閉的標(biāo)簽或大括號(hào)。它不包含任何可能使人類難以解析嵌套規(guī)則的東西。你可以看一下你的 YAML 文檔就知道它在什么。

[[425261]]

什么是 YAML,為什么我們現(xiàn)在應(yīng)該開始使用它?

YAMLYAML 不是標(biāo)記語(yǔ)言YAML Ain't Markup Language)是一種適宜閱讀理解的數(shù)據(jù)序列化語(yǔ)言。它的語(yǔ)法簡(jiǎn)單而易于閱讀。它不包含引號(hào)、打開和關(guān)閉的標(biāo)簽或大括號(hào)。它不包含任何可能使人類難以解析嵌套規(guī)則的東西。你可以看一下你的 YAML 文檔就知道它在什么。

YAML 特性

YAML 有一些超級(jí)特性,使其優(yōu)于其他序列化格式:

  • 易于略讀。
  • 易于使用。
  • 可在編程語(yǔ)言之間移植。
  • 敏捷語(yǔ)言的原生數(shù)據(jù)結(jié)構(gòu)。
  • 支持通用工具的一致模型。
  • 支持一次性處理。
  • 表現(xiàn)力和可擴(kuò)展性。

我將通過一些例子進(jìn)一步向你展示 YAML 的強(qiáng)大。

你能弄清楚下面發(fā)生了什么嗎?

  1. -------
  2. # My grocery list
  3. groceries:
  4. - Milk
  5. - Eggs
  6. - Bread
  7. - Butter
  8. ...

上面的例子包含了一個(gè)簡(jiǎn)單的雜貨購(gòu)物清單,它是一個(gè)完全格式化的 YAML 文檔。在 YAML 中,字符串不加引號(hào),而列表需要簡(jiǎn)單的連字符和空格。一個(gè) YAML 文檔以 --- 開始,以 ... 結(jié)束,但它們是可選的。YAML中的注釋以 # 開始。

縮進(jìn)是 YAML 的關(guān)鍵??s進(jìn)必須包含空格,而不是制表符。雖然所需的空格數(shù)量是靈活的,但保持一致是個(gè)好主意。

基本元素

集合

YAML 有兩種類型的集合。列表(用于序列)和字典(用于映射)。列表是鍵值對(duì),每個(gè)值都在一個(gè)新的行中,以連字符和空格開始。字典也是鍵值對(duì),每個(gè)值都是一個(gè)映射,包含一個(gè)鍵、一個(gè)冒號(hào)和空格以及一個(gè)值。

例如:

  1. # My List
  2. groceries:
  3. - Milk
  4. - Eggs
  5. - Bread
  6. - Butter
  7.  
  8. # My dictionary
  9. contact:
  10. name: Ayush Sharma
  11. email: myemail@example.com

列表和字典經(jīng)常被結(jié)合起來,以提供更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。列表可以包含字典,而字典可以包含列表。

字符串

YAML 中的字符串不需要加引號(hào)。多行字符串可以用 | 或 > 來定義。前者保留了換行符,而后者則沒有。

例如:

  1. my_string: |
  2. This is my string.
  3. It can contain many lines.
  4. Newlines are preserved.
  1. my_string_2: >
  2. This is my string.
  3. This can also contain many lines.
  4. Newlines aren't preserved and all lines are folded.

錨點(diǎn)

YAML 可以通過節(jié)點(diǎn)錨點(diǎn)來獲得可重復(fù)的數(shù)據(jù)塊。& 字符定義了一個(gè)數(shù)據(jù)塊,以后可以用 * 來引用。例如:

  1. billing_address: &add1
  2. house: B1
  3. street: My Street
  4.  
  5. shipping_address: *add1

至止你對(duì) YAML 的了解就足以讓你開始工作了。你可以使用在線 YAML 解析器來測(cè)試。如果你每天都與 YAML 打交道,那么 這個(gè)方便的備忘單 會(huì)對(duì)你有所幫助。 

 

責(zé)任編輯:龐桂玉 來源: Linux中國(guó)
相關(guān)推薦

2024-01-06 10:01:53

數(shù)據(jù)序列化格式

2022-08-06 08:41:18

序列化反序列化Hessian

2011-06-01 15:05:02

序列化反序列化

2009-08-24 17:14:08

C#序列化

2010-01-08 13:25:07

ibmdwXML

2009-03-10 13:38:01

Java序列化字節(jié)流

2011-06-01 15:18:43

Serializabl

2023-11-20 08:44:18

數(shù)據(jù)序列化反序列化

2023-12-13 13:49:52

Python序列化模塊

2009-08-06 11:16:25

C#序列化和反序列化

2011-05-18 15:20:13

XML

2018-03-19 10:20:23

Java序列化反序列化

2013-03-11 13:55:03

JavaJSON

2009-06-14 22:01:27

Java對(duì)象序列化反序列化

2019-11-20 10:07:23

web安全PHP序列化反序列化

2009-08-25 14:24:36

C#序列化和反序列化

2011-06-01 14:50:48

2021-01-20 08:24:38

序列化內(nèi)存對(duì)象

2011-06-01 14:26:11

序列化

2021-11-18 07:39:41

Json 序列化Vue
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)