PyYAML YAML解析

YAML是一种数据交换格式(类似JSON),由于其具有更好的可读性,因此常用作配置文件。这里我们看一下如何使用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字符串

import yaml

fp = open("test.yaml", "r")
dict = yaml.load(fp)
print(dict)
fp.close()

yaml.load()方法可以传入一个文件对象,也可以直接传入一个YAML字符串。

序列化字典到YAML

下面是一段例子代码,其中的dict是前面程序返回的。

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进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。
Copyright © 2017-2024 Gacfox All Rights Reserved.
Build with NextJS | Sitemap