保留YAML转储时未格式化的源代码

问题描述 投票:0回答:1

我的YAML文件如下所示:

info_block:
  enable: null
  start: "12:00"
  server_type: linux

我已经使用ruamel.yaml.dump加载和转储了>

但是,输出的格式如下:(如将null替换为空,则从起始值中删除双引号)

info_block:
  enable:
  start: 12:00
  server_type: linux

我如何保留

我的来源在这里

我知道this之类的东西可以保留null,但我希望完整的源代码未经格式化。

我的Yaml文件如下所示:info_block:启用:空开始:“ 12:00” server_type:linux我已经使用ruamel.yaml.dump加载和转储,但是输出的格式如下:(...] >

yaml pyyaml ruamel.yaml
1个回答
0
投票

[如果您想保留您的消息来源,最好的办法是跟踪是否发生了变化,如您的示例所示,不要在未更改的情况下覆盖源。

ruamel.yaml将始终规范化输出,如果那不是您想要的,您唯一的希望是对文件进行精确的字符串替换,可能使用有关已加载数据的行信息。我建议不要这样做,如果您保留的是用于最小化差异,则应将子弹头一次,就像使用某些源格式程序时将执行的操作。

© www.soinside.com 2019 - 2024. All rights reserved.