zoukankan      html  css  js  c++  java
  • 解决Python写入yaml后排版混乱还丢失注释问题

     大家有没有遇到过在使用Python进行yaml文件写入数据后,内容排版混乱并且丢失注释问题,非常不友好,如下图所示:

    针对上述问题,简单的解决方法如下:

    安装pip install ruamel.yaml

    使用:

    ruamel.yaml.load(Loader=ruamel.yaml.RoundTripLoader) 
    ruamel.yaml.dump(Dumper=ruamel.yaml.RoundTripDumper) 
    ruamel.yaml.round_trip_load() 
    ruamel.yaml.round_trip_dump() 
    示例代码如下:
    from ruamel import yaml
    def setDictYaml(self, fileDir, fileName, key, value):
        with open(filePath(fileDir, fileName), 'r', encoding="utf-8") as f:
            doc = yaml.round_trip_load(f)
        doc[key] = value
        with open(filePath(fileDir, fileName), 'w', encoding="utf-8") as f:
            yaml.round_trip_dump(doc, f, default_flow_style=False)
    setDictYaml(fileDir='config', fileName='config.yaml', key='password', value=123)

    运行后的结果如上图所示,问题完美解决!

  • 相关阅读:
    正则表达式
    cookie和session的区别(转载)
    Http协议
    10倍工程师
    10倍工程师
    HTML介绍
    HTML介绍
    网络基础之网络协议篇
    网络基础之网络协议篇
    计算机中的进制和编码
  • 原文地址:https://www.cnblogs.com/jiahm/p/13828140.html
Copyright © 2011-2022 走看看