本文发布于700 天前,最后更新于700天前,其中的信息可能已经有所发展或是发生改变。
介绍
YAML 全称 YAML Ain’t Markup Language,它是一种以数据为中心的标记语言,比 XML 和 JSON 更适合作为配置文件[1]。
PyYAML是Python中用于处理YAML的第三方库。
安装
pip install PyYAML
PyYAML 6.0要求 Python >=3.6[2]。
YAML文件
后缀
xxx.yml 或 xxx.yaml
语法
树形结构,相同的前缀只需要写一次
- 使用 空格缩进 来表示层级关系,空格数不重要,相同层级左对齐即可。不能用tab
- 使用
key: value
,:
后面要加一个空格(重要) - 大小写敏感
#
表示注释
其他可参考:
Python中使用
使用库
导入库名为yaml
import yaml
打开yaml文件
假设有test.yaml文件:
一级标题:
二级标题1:
- b:1
- c:2
- a:3
二级标题2:
- f:7
- t:8
- z:9
打开:
with open('test.yaml', 'r', encoding='utf-8') as f:
data = yaml.load(stream=f, Loader=yaml.FullLoader)
print(data)
运行结果:
{'一级标题': {'二级标题1': ['b:1', 'c:2', 'a:3'], '二级标题2': ['f:7', 't:8', 'z:9']}}
写入yaml文件
修改内容并保存
data['二级标题2'] = '修改内容'
with open('./test2.yaml', 'w', encoding='utf-8') as f:
yaml.dump(data=data, stream=f, allow_unicode=True, sort_keys=False, indent=4)
生成了test2.yaml文件
一级标题:
二级标题1:
- b:1
- c:2
- a:3
二级标题2:
- f:7
- t:8
- z:9
二级标题2: 修改内容