2018-12-24 了解 XML,JSON,YAML,Jinjia2 与Python (续)

上次写到YAML的语法格式,要提一句的是YAML包含了JSON,JSON支持的YAML都支持。
YAML其实是纯文本文件,后缀名是yaml或yml。
YAML文库开头是“---”,三个横杠代表YAML文件开始,前面没有空格。
比如大家都会举的一个例子,Jack一家4口为例,用JSON写出来是这样的:

{"name":"Jack","age":40,"spouse":{"name":"Joy","age":35"},"children":[{"name":"Jimmy","age":14},{"name":"Lily","age":11}]}

而用YAML格式,则是这样的:

---
name: Jack
age: 40
spouse:
    name: Joy
    age: 35
children:
 - name: Jimmy
    age: 14
 - name: Lily    
    age: 12

那么常用的列表和字典,怎么在YAML里表现呢?
如: Python 数字列表 [1,2,3,4]
写成YAML就是:

---
- 1
- 2
- 3
- 4

Python 字符列表 ["a","b","c","d"]
写成YAML:

---
- a
- b
- c
- d

列表总结:
列表的每个元素以“-”开头; 每个元素和“-”之间要有空格;Python/JSON里的引号都不需要;
嵌套的列表,[1,[2.1,2.2],[3.1,3.2,[3.31,3.32]],[4.1]]
写成YAML(关键是缩进)

---
- 1
- - 2.1
    2.2
- - 3.1
  - 3.2
  - - 3.31
    - 3.32
- - 4.1

字典呢,Python字典: {"a":"a1","b":"b1","c":"c1","d","d1"}
写成YAML,就是

---
a: a1
b: b1
c: c1
d: d1

跟列表不同,列表用“-”表示一个列表的开始,而字典仅使用冒号和空格。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、快捷键 ctr+b 执行ctr+/ 单行注释ctr+c ...
    o_8319阅读 5,880评论 2 16
  • Python 面向对象Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对...
    顺毛阅读 4,252评论 4 16
  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 19,104评论 17 410
  • 圆形,一直被赋予好的意义,比如圆圆满满,团团圆圆......而生活里圆形的物品还真不少,而且既好看又实用,能够给人...
    生活百科知识阅读 367评论 0 0