问题标签 [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.
python - 使用 ruamel.yaml 修改 YAML 会添加额外的新行
我需要为 YAML 文件中的现有键添加一个额外的值。以下是我正在使用的代码。
这是输入和输出。
输入
输出
我怎样才能摆脱和之间的新b
线c
?(当文件中的唯一键是唯一的键或和phase1
之间没有空行时,此问题不存在。)phase1
phase2
ruamel.yaml - 如何使用 Ruamel.yaml 在某些数据之前添加一个空行
我似乎无法弄清楚如何使用 Ruamel.yaml 在数据之间添加一个空行。
假设我有数据:
我需要添加到这一点,以便我将拥有:
我了解空行是作为 CommentToken 实现的:
我不知道如何操作该结构。
python - 如何在 Python 的 ruamel.yaml 中的空 yaml 文件中插入键值对?
我的目标是在可能为空的 YAML 文件中插入一个键值对。
例如,我的hiera.yaml
(用于 puppet)文件只包含三个连字符。
这是我的代码:
我正在运行它:
./alice.py Alice Doe 开发者
我得到如下输出:
但是当我的 hiera.yaml 文件不为空时,例如:
然后它可以正常工作。
请告诉我如何将键值对(在我的例子中是一个字典)插入一个空的 YAML 文件。ruamel.yaml 官方页面的示例使用 doc 字符串作为示例 YAML 内容,然后插入键值对。
yaml - 解析 yaml 文件时出错:发现无法启动任何令牌的字符 '%'
我正在尝试从 yaml 文件中解析具有类似于 jinaj2 模板语法的表达式的数据,目标是删除或添加一些项目到文件中。
AddCodesList.yaml
解析文件.py
执行 parseFile.py 脚本时出现以下错误:
python - 使用 pyyaml 或 ruamel.yaml 构造函数作为别名的锚
我正在尝试使用通过别名中的构造函数传递的锚定数据,但是别名想要使用预构造函数数据。
我从 anthon 的Is there a way to construction an object using PyYAML construction_mapping after all nodes complete loading? 中获得了灵感?但仍然没有找到快乐。
下面是一些示例代码:
第一个负载有效,但我希望第二个负载输出为
相反,我得到
打印结果constructing
表明构造函数已经完成了它的工作,但我怀疑它试图从未更改的 yaml 树中获取数据而不是从构造函数中获取结果数据的别名。
有什么办法可以使这项工作?
python - 如何让 Python 更新 YAML 的变量?
我想从 python 获取值以将它们放入 YAML:
input.yml
:
主机和系统日志部分正在工作,但我无法使前缀工作。
python - 如何离线安装 ruamel.yaml python 库?
我正在尝试在没有 Internet 连接的 Centos 7 机器上安装 ruamel.yaml python 库。我试过这个:
使用本地存储库安装 libyaml-devel、python-devel、python-pip
从 pypi 下载 ruamel.yaml-0.13.14.tar 和 ruamel.ordereddict-0.4.6.tar(dependency)。
现在我可以使用 pip install 安装 ruamel.ordereddict 了,但是当我尝试以同样的方式安装 ruamel.yaml 时,出现以下异常:
/li>
在离线模式下安装python库的正确方法是什么?
python - 1.1 中的 ruamel.yaml 八进制
我尝试使用 PyYAML 运行此代码:
没想到它会抛出一个断言错误。在我阅读了更多文档(通过http://yaml.org/找到)后,我意识到 PyYAML 不久前就死了,并且从不支持 YAML 1.2 规范中的八进制整数。
使用 ruamel.yaml ( from ruamel.yaml import safe_load
) 可以按预期工作。
只是出于好奇,我尝试了 ruamel.yaml 与旧的八进制格式(YAML 1.1
在顶部和z: 052
),并且效果也很好。我还尝试了以下方法:
期望它抛出一个错误,data['z']
应该是一个字符串,而不是整数 42。这不会抛出一个错误,我认为它应该。
我的期望是错误的,还是 ruamel.yaml 中的错误?
python - 往返前导 0 的十六进制数
我愿意加载一个包含 32 位十六进制数字的 yaml 文件,并保留前导 0,以便数字始终采用 0xXXXXXXXX 的形式。
我创建了一个自定义类和表示器,以便可以以这种形式转储十六进制数字:
但是,我找不到将这种格式应用于往返的十六进制数的正确方法。
确实,以下内容:
显示器
我希望在哪里显示
如何继续强制十六进制数字适合 0xXXXXXXXXX 格式?