PyYAML YAML解析
YAML(YAML Ain't Markup Language)是一种新型数据交换格式,相比传统的XML和JSON,由于YAML具有良好的可读性,因此常用作应用程序的配置文件。这篇笔记我们学习如何使用PyYAML库读取YAML配置文件。
安装PyYAML库
我们使用pip命令安装PyYAML库。
pip install PyYAML
解析YAML字符串
测试使用的YAML内容如下。
name: "Tom"
age: 10
languages:
- name: "python"
developer: "Guido van Rossum"
maintainer: "python.org"
- name: "java"
developer: "James Gosling"
maintainer: "oracle"
- name: "c"
developer: "AT&T Bell Laboratory"
下面例子从一个YAML文件中读取数据,返回dict对象。
import yaml
with open("test.yaml", "r") as fp:
data = yaml.load(fp, Loader=yaml.FullLoader)
print(data)
yaml.load()方法可以传入一个文件对象,也可以直接传入一个YAML字符串。
序列化字典到YAML
下面例子代码将一个dict对象序列化为YAML字符串。
str = yaml.dump(dict)
print(str)
运行结果如下。
age: 10
languages:
- {developer: Guido van Rossum, maintainer: python.org, name: python}
- {developer: James Gosling, maintainer: oracle, name: java}
- {developer: AT&T Bell Laboratory, name: c}
name: Tom
我们可以看到结果和原来不太一样,不过YAML也支持这种写法,因此这里和原来的内容是等价的。
作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。