如何将python列表转换为简单的YAML?

Jas*_*r33 3 python yaml

我的列表非常小,我可以手动完成这些,但我正在寻找以编程方式执行此操作的正确方法.我有这个测试:

import yaml

a = ['item 1','item 2','item 3','item 4']
yaml.dump(a)
Run Code Online (Sandbox Code Playgroud)

给我这个:

'[item 1, item 2, item 3, item 4]\n'
Run Code Online (Sandbox Code Playgroud)

当我想要的是简单的YAML输出如下:

---
- item 1
- item 2
- item 3
- item 4
Run Code Online (Sandbox Code Playgroud)

这需要是一个dict结构,有价值,但不知何故没有钥匙?不太清楚如何继续这里.非常感谢任何指导!

Seb*_*ler 6

您必须将以下参数设置为转储功能:

  • explicit_start=True对于---在输出的开始.
  • default_flow_style=False 打印每行中分隔的项目.
import yaml

a = ['item 1','item 2','item 3','item 4']
yaml.dump(a, explicit_start=True, default_flow_style=False)
Run Code Online (Sandbox Code Playgroud)

会给你

'---\n- item 1\n- item 2\n- item 3\n- item 4\n'

如果你print输出,你得到

---
- item 1
- item 2
- item 3
- item 4
Run Code Online (Sandbox Code Playgroud)