问题标签 [ruamel.yaml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2794 浏览

python - 如何在 Python 中使用 ruamel.yaml 从 YAML 文件中获取注释?

我想从我使用加载的 YAML 文件中获取注释字符串ruamel.yaml。项目文档缺少 API 参考,我找不到相关示例。访问评论的正确方法是什么?

0 投票
1 回答
1003 浏览

python-3.x - 使用 ruamel.yaml 添加引号

https://pypi.python.org/pypi/ruamel.yaml更改日志中有一个条目:0.11.12 (2016-07-06):

使用 ruamel 我可以转换:

至:

ruamel 中是否有一个选项可以添加而不是保留引号导致:

0 投票
2 回答
4942 浏览

python - 保留引号并在 Ruamel 中添加带引号的数据

我正在使用 Ruamel 在人工编辑的 YAML 文件中保留引用样式。

我有示例输入数据:

我使用以下方法读取数据:

然后我编辑该数据:

我使用以下方法写回磁盘:

输出文件是:

有没有一种方法可以强制对字符串 'bar' 进行硬引用,而无需在文件的其余部分强制使用这种引用样式?

(另外,我可以阻止它删除三个破折号---吗?)

0 投票
1 回答
1962 浏览

ruamel.yaml - 使用 Ruamel 插入密钥

我正在使用 Ruamel Python 库以编程方式编辑人工编辑的 YAML 文件。源文件具有按字母顺序排序的键。

我不确定这是一个基本的 Python 问题,还是一个 Ruamel 问题,但是我尝试对 Ruamel 的 OrderedDict 结构进行排序的所有方法对我来说都失败了。

例如,我很困惑,为什么基于这个配方的以下代码不起作用:

但是给定这个输入文件:

生成以下输出文件:

即它把我的文件变成了一个 YAML 有序映射。

是否有捷径可寻?另外,我可以以某种方式简单地插入数据结构吗?

0 投票
1 回答
1493 浏览

python - 如何使用显式引用转储 YAML?

递归引用在ruamel.yamlor中效果很好pyyaml

但是它(显然)不适用于普通参考:

我想明确地创建一个参考:

这对于生成具有大量公共键的大型数据结构的 YAML 输出非常有用

输出上没有有争议的 re.replace 怎么可能?

实际上的结果ruamel.yaml.dump(data)

所以我需要替换'<<'<<,也许替换id001foo.

0 投票
1 回答
10650 浏览

python - 如何配置 ruamel.yaml.dump 输出?

使用此数据结构:

我想得到这个 YAML:

不幸的是,我得到了这种格式:

即使使用 . 我也无法配置我想要的输出safe_dump。如果不对输出进行手动正则表达式工作,我该如何做到这一点?

我发现的唯一丑陋的解决方案是:

0 投票
1 回答
2157 浏览

python-2.7 - Suppress !!python/unicode in YAML output

When dumping (ruamel.yaml, PyYAML) the dict data = {'abc': 'def'} as YAML (with default_flow_style=False) in Python 2.7 you will get:

which is fine. However if you make all strings unicode (by u prefixing or by using from __future__ import unicode_literals) this gets dumped as:

How can I dump all strings (unicode prefixed or not) without tag, without reverting to using safe_dump()? Adding allow_unicode=True doesn't do the trick.

Complete example that generates the unwanted tags:

0 投票
1 回答
1715 浏览

ruamel.yaml - 在 Ruamel.yaml 中的键之前插入注释

我正在使用 Ruamel Python 库以编程方式编辑人工编辑的 YAML 文件。

我很难理解如何将评论插入结构化数据。

我有一些数据:

我想添加评论和新密钥:

是否可以使用 来做到这一点ruamel.yaml,如果可以,怎么做?

0 投票
3 回答
3398 浏览

python - ruamel.yaml 相当于 sort_keys?

我正在尝试将 Python dict 转储到使用ruamel.yaml. 我熟悉json模块的界面,漂亮地打印字典就像

ruamel.yaml我已经做到了

但它似乎不支持该sort_keys选项。ruamel.yaml似乎也没有任何详尽的文档,并且在 Google 中搜索“ruamel.yaml sort”或“ruamel.yaml alphabetize”并没有达到我所期望的简单程度。

是否有一个或两个行来漂亮地打印带有排序键的 YAML 文件?

(请注意,我需要在整个容器中递归地按字母顺序排列键;仅按字母顺序排列顶层是不够的。)


请注意,如果我使用round_trip_dump,则键未排序;如果我使用safe_dump,则输出不是“YAML 风格”(或更重要的是“Kubernetes 风格”)YAML。我不想[]{}在我的输出中。

0 投票
1 回答
1608 浏览

python - 跨所有文档的多文档 YAML 流中是否可以有别名?

这就是我想要做的(代码在 Python 3 中):

结果是:

当我使用非基于文档的 YAML 文件时,这可以按预期工作:

结果:

(无论如何我想完成的事情)


由于现在不可能,我正在使用以下脆弱的解决方法: