[英]ruamel.yaml: modify dump() to add extra '-' at the very start
我正在使用ruamel.yaml庫將字典轉儲到yaml文件中。 但是,它的行為並不符合我的期望。
我如何獲得:
---
- a:
- foo: bar
- bar: foo
代替:
a:
- foo: bar
- bar: foo
與yaml.dump()
我正在從中提取數據:
data = {
'a': [
{'foo':'bar'},
{'bar':'foo'}
]
}
具有相同功能的任何其他庫均已開放供投標。
您正在尋找的是在YAML
實例上設置explicit_start = True
。 此外,您需要做的頂級如果你想有一個列表- a
,而不是只是a
在第二行:
import sys
import ruamel.yaml
yaml_str = """\
---
-a:
-foo: bar
-bar: foo
"""
data = [{
'a': [
{'foo':'bar'},
{'bar':'foo'}
]
}]
yaml = ruamel.yaml.YAML()
yaml.explicit_start = True
yaml.dump(data, sys.stdout)
給出:
---
- a:
- foo: bar
- bar: foo
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.