如何解决在Python中,如何使用ruamel.yaml将字典转储到Yaml时将字典键值拆分为多行
使用ruamel.yaml将字典转储到YAML文件时遇到问题。
我们假设这是我要转储的字典,其中键的值是字典列表。
data1 = "blabla-1"
data2 = "blabla-2"
theDict = {"write_files": [{'content': '| ' + data1,'path': '/tmp/f1.txt'},{'content': '| ' + data2,'path': '/tmp/f2.txt'}
]
}
这就是我想要得到的结果:
write_files:
- content: |
blabla-1
path: /tmp/f1.txt
- content: |
blabla-2
path: /tmp/f2.txt
dict中“ content”键的值分为两行。
不幸的是,我得到了这个结果,其中“ content”键值与键所在的行位于同一行,并且单引号字符也位于其中。
write_files:
- content: '| blabla-1'
path: /tmp/f1.txt
- content: '| blabla-2'
path: /tmp/f2.txt
我应该在Python代码中进行哪些更改才能获得所需的结果?
这是我的Python 3代码:
import os
from ruamel.yaml import YAML
data1 = "blabla-1"
data2 = "blabla-2"
theDict = {"write_files": [{'content': '| ' + data1,'path': '/tmp/f2.txt'}
]
}
outputFile = "/tmp/test/yaml_test_out.yaml"
if os.path.isfile(outputFile):
os.remove(outputFile)
outF = open(outputFile,'w')
yaml = YAML()
yaml.preserve_quotes = True
yaml.indent = 4
yaml.dump(theDict,outF)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。