最佳答案
我正在使用 yaml.dump
输出一个结果,它会根据这个键以字母顺序的形式打印出每个条目。
>>> d = {"z":0,"y":0,"x":0}
>>> yaml.dump( d, default_flow_style=False )
'x: 0\ny: 0\nz: 0\n'
有办法控制键/值对的顺序吗?
在我的特定用例中,反向打印(巧合的是)已经足够好了。不过,为了完整起见,我正在寻找一个答案,说明如何更精确地控制顺序。
我已经考虑过使用 collections.OrderedDict
,但是 PyYAML 似乎并不支持它。我也研究过子类化 yaml.Dumper
,但是我还没有弄清楚它是否有能力改变项目顺序。