yaml数据类型

支持的数据类型

纯量:单个的,不可再分的值  

flag

 

数组:一组按次数排列的值

与Python的list数组结构类似,数组元素使用“-”开头,也可使用缩进行数组嵌套

- Jack
- harry
- sunny

#或者
[jack,harry,sunny]

 

对象:键值对的集合,又称哈希/字典/映射

对象的一组键值对,使用冒号表示

platformName: Android
platformVersion: 6.1.1

#另一种写法
{platformName: Android,platformVersion: 6.1.1}

 

数据嵌套

yaml数据嵌套可以根据实际情况将上面的数据类型进行组合嵌套

数据场景:

Tom 30岁,他的妻子Jane  26岁,他有两个孩子,一个叫Jack  5岁 ,另外一个加Smith ,2岁

yaml的语法表示如下:

name: Tom
age: 30
spouse:
   name: jane
   age: 26
children:
  - name: jack
    age: 5
  - name: Simth
    age: 2

 

yaml数据操作

数据读取

测试场景

读取yaml中的信息

方法:load(stream,Loader=Loader)解析文件流中的一个YAML文档并生成对应的pyhhon对象

 1 # -*- coding: utf-8 -*-
 2 import yaml
 3 
 4 file = open('family_yaml','r')
 5 date = yaml.load(file)
 6 #打印全部信息
 7 print (date)
 8 #打印Tom信息
 9 print (date['name'])
10 print (date['age'])
11 #打印妻子信息
12 print (date['spouse']['name'])
13 print (date['spouse']['age'])
14 #打印全部孩子信息
15 print (date['children'])
16 #打印第一个孩子信息
17 print (date['children'][0]['name'])
18 print (date['children'][0]['age'])
19 #打印第一个孩子信息
20 print (date['children'][1]['name'])
21 print (date['children'][1]['age'])