我正在使用python从excel读取值并使用__bool__()
生成yaml文件。
问题 - 我希望在yaml文件的单引号中显示一个值。例如:yaml.safe_dumps
。
我尝试了几个选项,我将输出设为'test'
或'''test'''
或test
知道如何在yaml文件中显示单引号。
以下是完整的代码:
!python/unicode 'test'
答案 0 :(得分:0)
PyYAML发出的表单与您请求的输出完全在语义上等效。 PyYAML没有任何承诺(也没有任何等效的库可以合理地期望做出承诺)来支持每个可能的语义等效序列化。
也就是说:
yaml.safe_load('yaml') == yaml.safe_load("'yaml'")
...是一个真实的语句,因此任何以不同方式处理yaml
和'yaml'
的YAML解析器都是错误的;你应该向那个解析器的维护者报告这些错误。
值得注意的是,许多磁盘格式确实指定并支持明确定义的规范形式。 YAML的规范对此有一个部分定义,PyYAML支持它作为输出格式。但是,此格式不等同于您要求的内容:
>>> print yaml.safe_dump('yaml', canonical=True)
---
!!str "yaml"