YAML简易教程
admin
2023-06-25 16:22:38
0次

  一、YAML简介

  YAML是一种人性化、跨语言、基于Unicode的数据序列化语言,YAML是“ YAML Ain’t a Markup Language ” 的递归缩写,YAML不是一种标记语言,读音“ 雅梅尔”。

  二、YAML的优点(特性)

  YAML的数据结构清晰,易于阅读。

  YAML是跨语言的,它的数据在编程语言之间可移植。

  YAML符合敏捷语言的数据结构。

  YAML支持一次性操作。

  YAML表现力强,扩展性好。

  YAML易于实现。

  三、YAML与其他语言的关系

  与JSON的关系

  共同点:

  JSON和YAML都是易于阅读的数据格式。

  不同点:

  JSON的设计目标是简单和通用,而YAML的设计主要在于易于阅读和支持任何复杂数据结构。

  YAML可看作JSON的自然超集,提供更好的可读性和完整的信息模型。

  每一个JSON文件都是一个有效的YAML文件,JSON迁移向YAML是很容易的事。

  与XML的关系

  YAML和XML没有直接相关性。YAML是一种数据序列化语言。XML是一种向后兼容的通用标记语言(SGML)。XML有设计约束,而YAML没有。

  四、YAML语法

  基本规则

  YAML区分大小写

  使用缩进表示层级关系

  缩进使用空格,不能使用TAB(同层级左对齐即可,不要求空格数,一般用2或4个空格)

  使用#号表示注释(YAML只有行注释)

  数据结构

  字典:键值对的集合,又称为映射(mapping)/ 哈希(hashes) / 对象

  数组:一组按次序排列的值,又称为序列(sequence) / 列表(list)

  纯量:单个的、不可再分的值,即基本数据类型

  注意:重复定义时,后面的值会覆盖前面的值;值为 int, float, bool等类型,解析后会转换为对应的类型

  字典

  key: value

  缩进表层级关系

  key:

  child-key1: child-value1

  child-key2: child-value2

  缩进只能用空格,不能用TAB键

  上面的用流式写法表示:

  key: {child-key1: child-value1, child-key2, child-value2}

  数组郑州人流多少钱 http://www.hnmt120.com/

  language :

  - Java

  - Python

  - Golang

  等价于 {‘language’ : [‘Java’, ‘Python’, ‘Golang’]}

  server :

  -

  host : 127.0.0.1

  port : 80

  -

  host : 127.0.0.1

  port : 8081

  流式写法 server : [{‘host’ : ‘127.0.0.1’, ‘port’ : ‘80’ } , {‘host’ : ‘127.0.0.1’, ‘port’ : ‘80’ } ]

  -

  - Java

  - Python

  - Golang

  等价于 [[‘Java’, ‘Python’, ‘Golang’]]

  ?

  - complexkey1

  - complexkey2

  :

  - complexvalue1

  - complexvalue2

  等价于 {[complexkey1, complexkey2] : [complexvalue1, complexkey2]}

  纯量

  纯量,也就是常量吧,整数,浮点数,字符串,NULL,日期,布尔,时间。以下用一个例子演示

  int:

  - 333

  - 0b1010_0111_0100_1010_1110 # 二进制表示

  float:

  - 3.14

  - 6.8523015e+5 # 科学计数法表示

  string:

  - 'bcat' # 双引号转译 单引号不转译 下面是多种字符串换行写法

  - line

  newline # 换行连接处会转译成一个空格

  - |

  line # 换行处会有 \n 换行符

  newline

  - >

  line # 字符串结尾会有 \n 换行符

  newline

  - "line\ # 换行处无空格 无 \n 换行符

  newline"

  null:

  - username : 'bcat'

  - ~ # ~ 表示null

  date:

  - 2019-12-17 # 日期必须使用 ISO 8601格式 即 yyyy-MM-dd格式

  datetime:

  - 2019-12-17T16:15:31+08:00 #时间使用ISO 8601格式 时间日期之间用T连接 时间时区之间用+分隔其他特殊符号


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...