【发布时间】:2019-09-17 01:20:17
【问题描述】:
我必须读取一个 yaml 文件,对其进行修改并使用 pyYAML 回写。除非单引号中有多行字符串值,否则每件事都可以正常工作,例如如果输入的 yaml 文件看起来像
FOO:
- Bar: '{"HELLO":
"WORLD"}'
然后将其读取为 data=yaml.load(open("foo.yaml")) 并将其写入 yaml.dump(data, fref, default_flow_style=False) 会生成类似
FOO:
- Bar: '{"HELLO": "WORLD"}'
即没有Bar 值的额外行。奇怪的是,如果输入文件有类似
FOO:
- Bar: '{"HELLO":
"WORLD"}'
即Bar 值的一个额外的新行然后将其写回生成正确数量的新行。知道我做错了什么吗?
【问题讨论】: