python - ruamel.yaml 如何引用包含冒号的字符串?
问题描述
在 python 中使用ruamel.yaml
时,我遇到了转储 yaml 的问题,但包含冒号的字符串不是引号。有谁知道如何解决?
import ruamel.yaml
import sys
yaml = YAML()
yaml.default_flow_style = False
d = {"example": "2:1"}
yaml.dump(d, sys.stdout)
产量
example: 2:1
当我期待
example: '2:1'
编辑:所以上面的响应显示响应是有效的 yaml ( https://yaml.org/spec/ )。我的管道中的某些东西似乎在此过程中处理不当。
是否可以强制 ruamel.yaml 引用值?
解决方案
所以事实证明我的管道中的某些东西是假设 YAML 1.1。问题不在于2:1
1.1 或任何 YAML 版本中的 YAML 无效,而是在 YAML 1.12:1
中被解释为 base 60 而不是字符串。
基本上这不是问题。ruamel.yaml
正确处理一切。