我想转储一个包含嵌套列表组件的字典,其中列表的每一行都在自己的行上。我也想维护字典顺序。
这是一个MWE:
import sys
from ruamel import yaml
from ruamel.yaml import YAML
d = {'b':1,
'a':[[1, 2],[3, 4]]}
# desired output:
# b: 1
# a:
# - [1, 2]
# - [3, 4]
print()
yaml.dump(d, sys.stdout)
print('\n')
YAML().dump(d, sys.stdout)
这就是我实际得到的:
a:
- [1, 2]
- [3, 4]
b: 1
b: 1
a:
- - 1
- 2
- - 3
- 4
第一种方法具有我想要的嵌套列表格式,但丢失了字典顺序。(这并不奇怪,因为我没有使用往返转储器)第二种方法设法维持秩序,但失去了我想要的嵌套列表格式。每当我使用往返转储器时,我都会丢失漂亮的嵌套列表格式。
这里有什么提示吗?