繁体   English   中英

ruamel.yaml 转储包含“...”

[英]ruamel.yaml dump contains "..."

我需要对 YAML 文件的内容进行排序,我正在学习 ruamel.yaml 来执行此操作。

鉴于此文件example.yml

---
- job:
    name: this is the job name

而这个 Python 程序:

import sys
import ruamel.yaml

yaml = ruamel.yaml.YAML()  # defaults to round-trip

# Read YAML file
with open('example.yml', 'r') as f:
    data = yaml.load(f)

yaml.dump(data[0]['job']['name'], sys.stdout)

我得到了工作名称,但我也得到了额外的一行...

$ python example.py
this is the job name
...
$

我没想到会看到...所以我有点困惑。 它来自哪里,为什么?

这是一个YAML 边界标记。

目前还不完全清楚您希望在这里生产什么。 如果您不特别想要 output 上的 YAML 文档,可能只需打印一下即可。 我猜您正在调试某些东西,因为这似乎与您声称正在进行的实际任务无关。

如果你想在内部对 YAML 文件进行排序, PyYAML 模块默认会这样做。 如果您特别需要 Ruamel, ruamel.yaml 相当于 sort_keys? 有一个解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM