yaml基本语法

yaml基本语法,第1张

YAML:YAML Ain't Markup Language,即YAML不是标记语言。不过,在开发的这种语言时,YAML的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)

YAML是一个可读性高的用来表达资料序列的格式。YAML参考了其他多种语言,包括:XML、C语言、 Python、Perl以及电子邮件格式RFC2822等。Clark Evans在2001年在首次发表了这种语言,另外Ingy döt Net与Oren Ben-Kiki也是这语言的共同设计者,目前很多最新的软件比较流行采用此格式的文件存放配置信息,如:ubuntu,anisble,docker,kubernetes等

YAML 官方网站: http://www.yaml.org

ansible 官网: https://docs.ansible.com/ansible/latest/reference_appendices/YAMLSyntax.html

yaml语言特性归纳如下

1、大小写敏感

2、使用缩进表示层级关系

3、禁止使用tab缩进,只能使用空格键

4、缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级

5、使用#表示注释

6、字符串可以不用引号标注

YAML 支持以下常用几种数据类型:

key对应value

标量是最基本的,不可再分的值,包括:

字典由多个key与value构成,key和value之间用 :分隔, 并且 : 后面有一个空格,所有k/v可以放在一行,或者每个 k/v 分别放在不同行

格式:

使用缩进方式

范例:

列表由多个元素组成,每个元素放在不同行,且元素前均使用"-"打头,并且 - 后有一个空格, 或者将所有元素用 [ ] 括起来放在同一行

也可以写成以 - 开头的多行

数据里面也可以包含字典

不同行,行以-开头,后面有一个空格# A list of tasty fruits

范例:YAML 表示一个家庭

XML:Extensible Markup Language,可扩展标记语言,可用于数据交换和配置

JSON:JavaScript Object Notation, JavaScript 对象表记法,主要用来数据交换或配置,不支持注释

YAML:YAML Ain't Markup Language YAML 不是一种标记语言, 主要用来配置,大小写敏感,不支持tab

Markdown 等其它「Markup Language」在功能上可以一定程度的代替 HTML 的一个子集。

YAML(YAML Ain't Markup Language)ain't mark language,不是标记语言,所以与 HTML 的功能是不重合的。

信息在传递的过程中都需要加以标记,可通过标签的方式,比如HTML,也可以通过键值对的方式name:kang,kang这个信息被标记为name,一组带有标记的信息存储起来就成了文档。

信息标记后有很多好处:

比如,HTML是超文本信息集(文本,声音,图像,视频),是WWW的信息组织方式。HTML以标签的方式标记信息。

信息标记的形式有以下三种,XML,JSON,YAML。

一个XML文档内容如下:

JSON对象的好处是可以直接作为JavaScript对象进行使用,需要注意的是,JSON文件是不允许加注释的,否则会解析错误。一个JSON文件内容如下:

一个YAML文件内容如下:

以上三种文件的信息提取都需要解析器,比如通过bs4库的标签树进行遍历,但速度较慢。也可以直接进行搜索,找到相关的信息。可借助正则表达式(re)来实现,bs4库和re库结合使用。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/8325083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存