yaml数据存储文件

1,安装解析yaml的库  

pip inatall PyYaml

2,yaml支持的数据结构

对象,以键值对的形式,比如字典

数组,比如列表

纯量(单个不可分割的值)

其中字典和列表用的比较多。

值为字典:

data1.yaml

dog: 'wangwang'

age: '10'

color: 'white'

字典的格式: 键名  冒号 空格  键值

列表格式:

- '1'

- '2'

写列表时,写的是列表里的元素。先写一个 -(在yml文件中,所有的横线都是表示这个数据是列表里的元素), 再写一个空格,再写内容。列表的标志是它有一个横线。

data2.yaml

- '1'

- '2'

3,yml文件中字典,列表嵌套的格式

在一个文件中,使用缩进表示层级关系。缩进的空格数目不重要,只要相同层级的元素左侧对齐即可。

报错:TabError: inconsistent use of tabs and spaces in indentation

 

解决:不用tab键,用四个空格键代替即可。有时候这样可以解决问题,但有时候也不能解决问题。问题无非就是空格的事,最简单的就是把刚才写的程序复制一下再删除掉,把光标删除到上一次开始写的地方,粘贴或者重新写一下试试,

 

字典嵌套字典:

想把python格式为{name: 'huifeng', info: {loc: 'gaoxin', tel: '029-'}}在yml文件中表示:

 

name: 'huifeng'
info:
loc: 'gaoxin'
tel: '029-'
字典嵌套列表:
把python格式为{name: 'huifeng', info:[1, 2, 3]}在yml文件中表示:
name: 'huifeng'
info:
- '1'
- '2'
- '3'
列表嵌套字典
[1, {size: 10px, loc: {x: 10px, y: 20px}}, 3]在yml文件中表示:
- 1
-
size: '10px'
loc:
x: '10px'
y: '20px'
- 5
列表嵌套列表
[1, [01, 02], 3]在yml文件中为
- 1
-
- 01
- 02
- 3

4,读写yaml文件

Python格式的数据,如demo2020.py写入到demo2020_text.yml文件中,则生个一个yml文件,里面装载数据。

 

 在当前目录下,生成的文件为demo2020_text.yaml

 

 在Python中读取yaml文件

 

 

 

 

 

 

 

 

 

 


 
 

 

posted @ 2020-04-12 12:07  rosexiang  阅读(1237)  评论(0编辑  收藏  举报