Fork me on GitHub

python操作YAML文件之pyyaml库

 

1. YAML简介

YAML是一种被认为可以超越XML、JSON的配置文件,最早接触是Spring Boot,木有想到python也是支持的,遂研究一下。

python解析YAML库叫做pyyaml,话说这个名字一点也不酷,按照习俗应该会省略掉一个y叫做pyaml之类的呀。

 

2. 安装pyyaml

从官网下载zip包拷贝到合适的位置并解压从CMD进入此目录:

image

执行setup.py安装:

python setup.py install

安装完毕到上面这个命令输出的安装目录看一下文件是否都在。

 

3. 使用

读文件

随便写个yaml的文件,比如config.yaml:

apple:
  color: red
  weight: 500
dog:
  name: DaHuang

然后解析它:

import yaml

if __name__ == '__main__':
    with open('G:\\test\\config.yaml', encoding='UTF-8') as config_file:
        config = yaml.load(config_file)
        print(config)

可以直接从文件加载,加载进来之后是一个字典,打印输出如下:

{'apple': {'color': 'red', 'weight': 500}, 'dog': {'name': 'DaHuang'}}

 

写文件

import yaml

if __name__ == '__main__':
    guy = {
        'name': '陈二',
        'age': '22',
        'tag': 'loser'
    }

    # 直接dump可以把对象转为YAML文档
    print(yaml.dump(guy))

    # 也可以直接dump到文件或者流中
    with open('G:\\test\\guy.yaml', 'w', encoding='UTF-8') as guy_file:
        yaml.dump(guy, guy_file)

 

 

参考资料:

1. http://pyyaml.org/

2. http://pyyaml.org/wiki/PyYAMLDocumentation

 

.

posted @ 2017-11-15 23:28  CC11001100  阅读(5532)  评论(0编辑  收藏  举报