一、思考
1.什么是yaml?
- 不是标记语言
- 对用户极其友好
- 数据序列化标准
- 跨语言 所有编程语言都支持
- 跨平台 所有平台都支持 Windows、linux、Mac
- 格式简单 比json小姐姐穿得更少
- 应用非常广泛
2.Python中哪些模块可以处理yaml?
- yyaml 应用最广泛 封装的api不够简单 不支持YAML 1.2最新版
- ruamel.yaml 是pyyaml的衍生版 封装的api简单 支持YAML 1.2最新版
二、基础操作
1.安装ruamel.yaml
使用官方pypi源来安装
pip install ruamel.yaml
使用豆瓣pypi源来安装(推荐)
pip install -i https://pypi.douban.com/simple ruamel.yaml
2.基本用法
在项目根目录下创建user_info.yaml文件
外号
user:
- 可优
- keyou
- 小可可
- 小优优
爱人
lovers:
- 柠檬小姐姐
- 橘子小姐姐
将yaml格式的数据转化为python中的数据类型
from ruamel.yaml import YAML
# 第一步: 创建YAML对象
yaml = YAML(typ='safe')
# typ: 选择解析yaml的方式
# 'rt'/None -> RoundTripLoader/RoundTripDumper(默认)
# 'safe' -> SafeLoader/SafeDumper,
# 'unsafe' -> normal/unsafe Loader/Dumper
# 'base' -> baseloader
# 第二步: 读取yaml格式的文件
with open('user_info.yaml', encoding='utf-8') as file:
data = yaml.load(file